import os
def batch_rename_files(directory, old_pattern, new_pattern):
"""
批量重命名文件。
参数:
- directory: 文件所在的目录路径。
- old_pattern: 旧文件名中需要替换的部分。
- new_pattern: 新文件名中替换成的部分。
示例:
如果目录中有文件 'file1_old.txt' 和 'file2_old.txt',
调用 batch_rename_files('path/to/directory', 'old', 'new')
将会把文件重命名为 'file1_new.txt' 和 'file2_new.txt'。
"""
try:
# 获取指定目录下的所有文件和文件夹
for filename in os.listdir(directory):
# 检查文件名是否包含旧模式
if old_pattern in filename:
# 构造新的文件名
new_filename = filename.replace(old_pattern, new_pattern)
# 构造完整的文件路径
old_file_path = os.path.join(directory, filename)
new_file_path = os.path.join(directory, new_filename)
# 重命名文件
os.rename(old_file_path, new_file_path)
print(f"Renamed: {filename} -> {new_filename}")
except Exception as e:
print(f"Error: {e}")
# 示例调用
# batch_rename_files('/path/to/your/directory', 'old', 'new')
os
模块来处理文件和目录操作。batch_rename_files
函数接收三个参数:目录路径、旧模式和新模式。os.listdir(directory)
获取指定目录下的所有文件和文件夹。if old_pattern in filename
检查文件名是否包含旧模式。filename.replace(old_pattern, new_pattern)
构造新的文件名。os.rename(old_file_path, new_file_path)
进行文件重命名。上一篇:python snmp
下一篇:python wordcloud
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站