利用Python的rename()函数批量重命名指定文件夹内的文件名
发布时间:2023-12-17 14:54:37
在Python中,我们可以使用os模块的rename()函数来批量重命名指定文件夹内的文件名。
首先,导入os模块:
import os
接下来,我们可以定义一个函数来批量重命名文件。这个函数需要接受两个参数:原始文件名和要修改的文件名。在函数内部,我们可以使用os.rename()函数来执行实际的重命名操作。
def rename_files(original_name, new_name):
for filename in os.listdir('.'):
if filename.startswith(original_name):
new_filename = filename.replace(original_name, new_name)
os.rename(filename, new_filename)
print(f"{filename}已重命名为{new_filename}")
在这个函数中,我们使用os.listdir()函数来获取当前文件夹中的所有文件名。然后,我们使用字符串的startswith()方法来检查文件名是否以指定的原始文件名开头。如果文件名满足条件,我们可以使用replace()方法来将原始文件名替换为新文件名。最后,我们使用os.rename()函数来重命名文件,并打印出重命名后的文件名。
现在,我们可以调用这个函数来批量重命名文件。假设我们有一个名为test_files的文件夹,其中有一些以old_name开头的文件。我们可以调用rename_files()函数来将文件名中的old_name替换为new_name。
rename_files('old_name', 'new_name')
以下是一个完整的例子:
import os
def rename_files(original_name, new_name):
for filename in os.listdir('.'):
if filename.startswith(original_name):
new_filename = filename.replace(original_name, new_name)
os.rename(filename, new_filename)
print(f"{filename}已重命名为{new_filename}")
rename_files('old_name', 'new_name')
这个例子将重命名文件夹中以old_name开头的所有文件。假设我们的文件夹中有old_name_1.txt、old_name_2.txt和old_name_3.txt这三个文件,运行这个脚本后,它们将被分别重命名为new_name_1.txt、new_name_2.txt和new_name_3.txt。
注意事项:
- 要确保脚本文件和要重命名的文件在同一个文件夹中。
- 在使用os.rename()函数时要小心,确保不会无意中覆盖或删除其他重要文件。
这就是使用Python的rename()函数来批量重命名指定文件夹内的文件名的基本方法。可以根据实际需求进行修改和扩展。
