当我们需要批量修改文件名时,手动一个一个修改会浪费大量时间和精力。Python可以帮我们轻松地实现文件名批量修改的功能。本文将介绍三种Python批量修改文件名的方法,并提供代码示例,让大家可以轻松地上手。
方法一:使用os模块的rename()函数
这种方法是最常用的一种方法,只需要使用os模块中的rename()
函数即可完成文件名的修改。
代码示例:
import os
# 设置文件所在路径
path = 'D:/Test/'
# 批量修改文件名
for filename in os.listdir(path):
# 修改后的文件名
newname = filename.replace('old', 'new')
# 重命名文件
os.rename(os.path.join(path, filename), os.path.join(path, newname))
该代码中使用了os
模块的rename()
函数,先遍历文件所在路径下的所有文件,在循环中通过字符串替换方法找到需要修改的文件名,然后使用rename()
函数进行修改。
方法二:使用glob模块的glob()函数
这种方法需要使用glob
模块中的glob()
函数来获取需要修改的文件,可以使用通配符等正则表达式来匹配文件名和路径。
代码示例:
import glob
import os
# 匹配需要修改的文件
files = glob.glob('D:/Test/*.txt')
# 批量修改文件名
for file in files:
# 获取文件名
filename = os.path.basename(file)
# 修改后的文件名
newname = filename.replace('old', 'new')
# 重命名文件
os.rename(file, os.path.join(os.path.dirname(file), newname))
该代码中使用了glob
模块的glob()
函数,获取所有.txt
格式的文件,然后在循环中使用字符串替换方法找到需要修改的文件名,使用rename()
函数进行修改。
方法三:使用Python的字符串处理方法
这种方法直接使用Python自带的字符串处理函数来实现文件名的修改,比较灵活。
代码示例:
import os
# 设置文件所在路径
path = 'D:/Test/'
# 批量修改文件名
for file in os.listdir(path):
# 获取文件名和文件扩展名
filename, extname = os.path.splitext(file)
# 修改后的文件名
newname = filename.replace('old', 'new') + extname
# 文件重命名
os.rename(os.path.join(path, file), os.path.join(path, newname))
该代码中使用了Python字符串处理函数,先通过splitext()
函数获取文件扩展名,然后使用字符串替换方法找到需要修改的文件名,使用rename()
函数进行修改。
跟据上面的方法,可以根据实际需要进行选择使用。如果文件数量多同时也要修改文件路径等属性,那么就需要换一种结论更加高效的批量修改文件名方法了,比如使用第三方包batch_rename
等。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python批量修改文件名的三种方法实例 - Python技术站