python 对文件进行批量改名用到的是 os 模块中的 listdir 方法和 rename 方法。
- os.listdir(dir) : 获取指定目录下的所有子目录和文件名
- os.rename(原文件名,新文件名) : 对文件或目录改名
通过自定义文件的前缀、后缀和文件开始数目(目录不修改),把混乱的文件名改成有序的文件名,代码如下。
- import os
-
- path = input('请输入文件夹路径:')
- prefix = input('请输入文件名前缀:')
- suffix = input('请输入文件名后缀:')
-
- # 获取该目录下所有文件,存入列表中
- fileList = os.listdir(path)
-
- m = int(input('请输入开始数:')) # python中input函数默认返回一个字符串,需强制转化为整数
- n = m
- for inner_file in fileList:
- # 获取旧文件名(就是路径+文件名)
- old_name = path + os.sep + inner_file # os.sep添加系统分隔符
- if os.path.isdir(old_name): # 如果是目录则跳过
- continue
-
- # 设置新文件名
- new_name = path + os.sep + prefix + str(n) + suffix
- os.rename(old_name, new_name) # 用os模块中的rename方法对文件改名
- n += 1
-
- print("共修改了", n-m, "个文件。")
运行实例:
修改前文件夹
运行代码
修改后的文件夹:
参考资料:https://www.runoob.com/note/27030