欢迎访问宙启技术站
智能推送

利用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.txtold_name_2.txtold_name_3.txt这三个文件,运行这个脚本后,它们将被分别重命名为new_name_1.txtnew_name_2.txtnew_name_3.txt

注意事项:

- 要确保脚本文件和要重命名的文件在同一个文件夹中。

- 在使用os.rename()函数时要小心,确保不会无意中覆盖或删除其他重要文件。

这就是使用Python的rename()函数来批量重命名指定文件夹内的文件名的基本方法。可以根据实际需求进行修改和扩展。