# -*- encoding:utf-8 -*- import os def replace_filename(root_path): # 获取目标根目录下的所有文件夹的名字,以字符串列表的形式返回 root_dirs = os.listdir(root_path) # 遍历列表,分别操作单个文件夹 for dir in root_dirs: # 根据文件夹名,获得次级路径,即把 root_path 和 dir 拼凑起来 sec_path = os.path.join(root_path, dir) # 同第一个操作,获取该文件夹下的所有文件的名字,以字符串列表的形式返回 file_of_each_sec_dir = os.listdir(sec_path) # 遍历次级文件夹,分别打印其中的所有文件名字 for file in file_of_each_sec_dir: # 用 . 分割字符串 split_str = file.split('.') # 拼凑自己想要的内容 newname = split_str[0] + '.' + split_str[3] + '.' + split_str[-1] # 更改名字其实就相当于把路径名更改 # 文件旧路径 oldname_path = os.path.join(sec_path, file) # 文件新路径 newname_path = os.path.join(sec_path, newname) # 新旧对调 os.rename(oldname_path, newname_path) if __name__ == '__main__': root_path = 'D:\绝命毒师' replace_filename(root_path)
执行之后的结果