一个文件夹下面有很多个子文件夹,要把文件夹中的大写数字全部重命名为小写数字,比如将二 三 四,改成: 2 34
在ChatGPT中输入提示词如下:
你是一个Python编程专家,要完成一个文件夹重命名的任务。具体步骤如下:
本地电脑 “E:\Peppa Pig小猪佩奇” 文件夹下有很多个文件夹;
获取所有文件夹标题名,将文件夹标题里的大写数字全部转为小写;
举例:“小猪佩奇第二季”,改成“小猪佩奇第2季”;
注意:每个步骤都要输出相关信息
ChatGPT的回复如下:
您描述的任务涉及到两个步骤,首先是将中文数字转换为阿拉伯数字,然后是重命名文件夹。以下是一个Python脚本,完成这个任务。
这个脚本使用Python的 os 库来操作文件系统,并使用一个字典来将中文数字映射到阿拉伯数字。
注意:这段代码会直接修改您的文件系统,所以在运行这段代码之前,建议您先备份您的文件,以防止意外的数据丢失。另外,这段代码只会修改文件夹名,不会修改文件夹内容或其他属性。
Python源代码如下:
import os
# 定义要操作的目录
directory = r"E:\Peppa Pig小猪佩奇"
# 定义中文数字和阿拉伯数字的映射
cn_num = {'零': 0, '一': 1, '二': 2, '三': 3, '四': 4, '五': 5, '六': 6, '七': 7, '八': 8, '九': 9, '十': 10}
# 遍历文件夹中的所有子文件夹
for foldername in os.listdir(directory):
print(f"处理文件夹: {foldername}")
new_foldername = foldername
# 检查每个中文数字
for cn, num in cn_num.items():
if cn in new_foldername:
print(f"找到中文数字: {cn}")
new_foldername = new_foldername.replace(cn, str(num))
# 如果文件夹名已经被修改,那么重命名文件夹
if new_foldername != foldername:
print(f"重命名文件夹为: {new_foldername}")
os.rename(os.path.join(directory, foldername), os.path.join(directory, new_foldername))
else:
print("文件夹名未修改.")
print("处理完成.")
程序运行成功,这些文件夹自动按名称排序,一下子清爽有序了: