文件重命名工具摘要

发布时间 2023-10-29 21:08:05作者: 不上火星不改名

功能介绍:

  1. 文件名处理:此工具可以批量处理指定目录及其子文件夹中的文件名。具体操作包括删除文件名中最后一个英文字母后的所有字符。
  2. 字符替换:工具会将文件名中的下划线(_)和中文逗号()都替换为英文逗号(,),并确保英文逗号后有一个空格。
  3. 文件后缀修改:无论原始文件的类型如何,此工具都会将其更改为.jpg

使用提示:在运行此程序之前,建议先备份目标文件夹,以确保数据安全。


 

 

import os
import re

def process_filename(filename):
original_name, ext = os.path.splitext(filename)
new_name = re.sub(r'(?<=[a-zA-Z])[^a-zA-Z]*$', '', original_name)
new_name = new_name.replace("_", ",").replace(",", ",")
new_name = re.sub(r',([a-zA-Z])', r', \1', new_name)
return new_name

def rename_files(directory):
all_files = []

for dirpath, dirnames, files in os.walk(directory):
for file in files:
if not os.path.isdir(os.path.join(dirpath, file)):
new_name = process_filename(file)
all_files.append((dirpath, file, new_name))

for dirpath, file, new_name in all_files:
ext = '.jpg'
final_name = new_name
counter = 1
while os.path.exists(os.path.join(dirpath, final_name + ext)):
final_name = f"{new_name}({counter})"
counter += 1

os.rename(os.path.join(dirpath, file), os.path.join(dirpath, final_name + ext))

if __name__ == "__main__":
print("欢迎使用文件重命名工具!")
print("此程序的功能如下:")
print("1. 检索指定目录及其子文件夹中的所有非文件夹文件,并删除文件名的最后一个英文字母后的内容。")
print("2. 将文件名中的_和中文逗号替换为英文逗号,并在逗号后添加空格。")
print("3. 更改所有文件的后缀为.jpg。")
print("\n请确保在运行此程序之前备份了您的文件,以防万一!")
directory = input("\n请输入要处理的目录地址:")
rename_files(directory)
print("\n文件重命名完成!")