#小白级别,大神勿扰
import os
def input_folder_name():
folder_name=input("请输入要重命名的文件夹:
")
return folder_name
def input_str_name():
str_name=str(input("请输入字符串(可用于新增/删除):
"))+'-'
return str_name
def input_mofidy_str():
mofidy_str=str(input("请输入修改后的字符串:
"))+'-'
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()