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

使用Python的rename()函数对文件名进行批量更改的实现方法

发布时间:2023-12-17 14:53:22

在Python中,可以使用os.rename()函数对文件名进行批量更改。os.rename()函数接受两个参数, 个参数是旧文件名,第二个参数是新文件名。以下是使用Python的os.rename()函数进行批量更改文件名的实现方法:

1. 导入os模块:

   import os
   

2. 定义一个函数,用于批量更改文件名:

   def batch_rename_files(directory, old_pattern, new_pattern):
       for filename in os.listdir(directory):
           if old_pattern in filename:
               new_filename = filename.replace(old_pattern, new_pattern)
               os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename))
   

以上函数接受三个参数:

- directory:要更改文件名的目录路径。

- old_pattern:要被替换的旧文件名部分。

- new_pattern:替换后的新文件名部分。

3. 调用函数进行批量更改文件名:

   batch_rename_files('/path/to/directory', 'old', 'new')
   

以上示例中,函数将会更改/path/to/directory目录下所有文件名中包含old的部分为new

以下是一个完整的使用示例,假设我们有一个目录/path/to/directory,其中包含以下文件:

file1_old.txt
file2_old.txt
file3_old.txt

我们想将这些文件名中的old替换为new,可以使用如下代码:

import os

# 定义批量更改文件名函数
def batch_rename_files(directory, old_pattern, new_pattern):
    for filename in os.listdir(directory):
        if old_pattern in filename:
            new_filename = filename.replace(old_pattern, new_pattern)
            os.rename(os.path.join(directory, filename), os.path.join(directory, new_filename))

# 调用函数更改文件名
batch_rename_files('/path/to/directory', 'old', 'new')

执行以上代码后,目录/path/to/directory下的文件名将会变为:

file1_new.txt
file2_new.txt
file3_new.txt

注意:在使用os.rename()函数时,请确保目录路径和文件名的正确性,并小心操作,以防造成不可恢复的损失。