1-目的:编写一个可以自动修改指定文件夹内文件名称的程序

2-文件详情:

文件夹地址:D:\01-硕博论文

文件名的格式:number-year-name1-name2

3-现在要求如下:

1)首先读取文件夹内的文件名称

2)然后根据名称按number的大小顺序由小到大排序,Num=文件个数。

3)重命名文件名,保持文件名的格式中的-year-name1-name2不变,修改number的值:将文件名的格式中的number按阿拉伯数字从1到Num开始重新从命名(按第2步排过序的文件顺序重新命名)。

import os

folder_path = r"D:\01-硕博论文"

# 获取文件夹内所有文件的路径
file_paths = [os.path.join(folder_path, filename) for filename in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, filename))]

# 按number的大小顺序对文件路径进行排序
file_paths.sort(key=lambda x: int(os.path.basename(x).split('-')[0]))

# 重命名文件
for i, file_path in enumerate(file_paths):
    file_name = os.path.basename(file_path)
    file_extension = os.path.splitext(file_name)[1]  # 获取文件扩展名
    new_file_name = f"{i+1:02d}-{file_name.split('-')[1]}-{file_name.split('-')[2]}-{file_name.split('-')[3]}{file_extension}"
    new_file_path = os.path.join(folder_path, new_file_name)
    os.rename(file_path, new_file_path)
06-08 09:40