#小白級別,大神勿擾import os def input_folder_name(): folder_name=input("請輸入要重命名的文件夾:\n") return folder_name def input_str_name(): str_name=str(input("請輸入字符串(可用於新增/刪除):\n"))+'-' return str_name def input_mofidy_str(): mofidy_str=str(input("請輸入修改後的字符串:\n"))+'-' return mofidy_str def file_name_chongmingming_add_str(): #增長字符串的方法 folder_name=input_folder_name() str_name=input_str_name() file_names=os.listdir(folder_name) for name in file_names: old_file_name=folder_name+'/'+name new_file_name=folder_name+'/'+str_name+name os.rename(old_file_name,new_file_name) else: print("未找到查詢的字符串") def file_name_chongmingming_delete_str(): #刪除增長的字符串的方法 folder_name=input_folder_name() str_name=input_str_name() file_names=os.listdir(folder_name) for name in file_names: old_file_name=folder_name+'/'+name if str_name in name: find_str_index=name.rfind(str_name) #從文件名中查找匹配的字符串,從右往左,若是從左往右匹配出來的結果是0,取出來仍是源文件名 if find_str_index==0: #當匹配出字符串的長度未0時,文件名爲匹配出的字符長度加上查找的字符串的長度,從而獲得最終的文件名 new_file=name[find_str_index+len(str_name):] else: new_file=name[find_str_index:] new_file_name=folder_name+'/'+new_file os.rename(old_file_name,new_file_name) else: print("未找到查詢的字符串") def file_name_chongmingming_modify_str(): #修改增長的字符串的方法 folder_name=input_folder_name() str_name=input_str_name() mofidy_str=input_mofidy_str() file_names=os.listdir(folder_name) for name in file_names: old_file_name=folder_name+'/'+name if str_name in name: find_str_index=name.rfind(str_name) find_str_count=name.count(str_name) if find_str_index==0 or find_str_count==1: new_file=name[:find_str_index]+mofidy_str+name[find_str_index+len(str_name):] #拼接文件名,文件名前部分爲匹配出來的下標到文件最前面的內容,中間內容爲修改的字符串,文件名末尾爲匹配下標到文件後面的內容 else: new_file=mofidy_str+name[find_str_index+len(str_name):] # print(name[find_str_index:]) # print(new_file) new_file_name=folder_name+'/'+new_file os.rename(old_file_name,new_file_name) else: print("未找到查詢的字符串") if __name__=='__main__': for a in range(1): # file_name_chongmingming_add_str() file_name_chongmingming_delete_str() # file_name_chongmingming_modify_str()