Python 实现批量修改文件名 V1.1.1

发布时间 2024-01-10 14:36:58作者: 小钟学编程

一:需求
工作中经常会需要批量修改文件名。将某文件夹中的文件,修改成某文件名
二:事前准备
Python导入依赖库:

import configparser
import os
import chardet

三:开发:
1.创建配置文件,用于填写2个数据:目录,文件名

[Directories]
source_directory = D:\12013275
[Name]
new_name = 2023

2.主文件:修改文件名方法,运行
2.1创建batch_rename_files函数(方法),用于修改文件名

def batch_rename_files(directory, new_name):
    # 遍历指定目录下的所有文件
    for filename in os.listdir(directory):
        # 构建文件的完整路径
        old_file_path = os.path.join(directory, filename)
        # 构建新的文件名
        new_filename = new_name + os.path.splitext(filename)[1]
        # 构建新的文件路径
        new_file_path = os.path.join(directory, new_filename)
        # 重命名文件
        os.rename(old_file_path, new_file_path)
        print(f"Renamed file {old_file_path} to {new_file_path}")

2.3创建run函数(方法),用于程序连接,运行

def run():
    # 读取配置文件
    with open('config.ini', 'rb') as f:
        result = chardet.detect(f.read())  # 检测文件编码
    with open('config.ini', 'r', encoding=str(result['encoding'])) as f:
        config = configparser.ConfigParser()
        config.read_file(f)
    # 从配置文件中获取目录、新文件名
    source_dir = config['Directories']['source_directory']
    new_name = config['Name']['new_name']
    print(source_dir)
    print(new_name)
    batch_rename_files(source_dir, new_name)