文件重命名2.0

#小白级别,大神勿扰
import
os folder_name=input("请输入要重新的文件夹:\n") str_name=str(input("请输入重命名字符串:\n"))+'-' mofidy_str=str(input("请输入修改后的字符串:\n"))+'-' def file_name_chongmingming_add_str(): #增加字符串的方法 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) def file_name_chongmingming_delete_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) #从文件名中查找匹配的字符串,从右往左,如果从左往右匹配出来的结果是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) def file_name_chongmingming_modify_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:] print(name[find_str_index:]) print(new_file) new_file_name=folder_name+'/'+new_file os.rename(old_file_name,new_file_name) if __name__=='__main__': for a in range(1): # file_name_chongmingming_add_str() # file_name_chongmingming_delete_str() file_name_chongmingming_modify_str()

猜你喜欢

转载自www.cnblogs.com/qtclm/p/10693373.html