def searchfile(path):
for i in os.listdir(path):
if os.path.isdir(os.path.join(path, i)):
searchfile(os.path.join(path,i))
else:
file_list = i.split(".") # 将用户输入的文件名的名称与文件类型的后缀分割开
newfilename = file_list[0] + "重命名." + file_list[1] # 构造一个新的文件名
os.rename(i,newfilename)
pass
pass
else:
return
pass
在这里是一个递归函数查找文件,并将查找到的文件进行重命名,但是在运行之后会出现FileNotFoundError: [WinError 2] 系统找不到指定的文件的错误。
修改方法:加入代码
os.chdir(path)
也就是将文件的路径指定到要查找的文件夹下
def searchfile(path):
for i in os.listdir(path):
os.chdir(path)
if os.path.isdir(os.path.join(path, i)):
searchfile(os.path.join(path,i))
else:
file_list = i.split(".")
newfilename = file_list[0] + "重命名." + file_list[1] # 构造一个新的文件名
os.rename(i,newfilename)
pass
pass
else:
return
pass
这样运行后的结果不报错了,文件名也可以正常修改。