python 批量改文件名

未改名的原文件名

# -*- 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)

执行之后的结果