在日常工作中,经常会遇到需要批量修改文件名的情况,可能是为了更好的组织文件,也可能是为了处理大量的数据文件。Python提供了强大的工具和库来处理这个任务,本文将介绍如何使用Python来批量修改文件名,包括文件名的替换、前缀、后缀的添加等多种操作。
使用os
模块和os.path
模块
Python的os
模块和os.path
模块提供了文件和目录操作的基本功能,可以用于文件名的操作。
1. 文件名替换
要批量替换文件名中的特定字符串,可以使用os.listdir()
列出目录中的所有文件,然后使用字符串的replace()
方法替换文件名中的字符串。
import os
def replace_in_filenames(directory, old_str, new_str):
for filename in os.listdir(directory):
if old_str in filename:
new_filename = filename.replace(old_str, new_str)
os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename))
# 示例用法
replace_in_filenames('/path/to/directory', 'old_string', 'new_string')
2. 添加前缀和后缀
要在文件名前后添加前缀或后缀,可以使用字符串的拼接操作。
import os
def add_prefix_suffix(directory, prefix, suffix):
for filename in os.listdir(directory):
new_filename = prefix + filename + suffix
os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename))
# 示例用法
add_prefix_suffix('/path/to/directory', 'prefix_', '_suffix')
使用glob
模块
glob
模块提供了更强大的文件匹配和查找功能,可以使用通配