一个中文字算3个

如果有多个文件,重命名的时候被命名为相同的文件名,那么会被覆盖。N个文件变1个。

  1. # -*- coding: utf-8 -*-
  2. import os
  3. for file in os.listdir('.'): #os.listdir('.')遍历文件夹内的每个文件名,并返回一个包含文件名的list
  4. if file[-2: ] == 'py': #过滤后缀为py的文件
  5. continue #过滤掉改名的.py文件
  6. name = file.replace(' ', '_') #替换空格为_
  7. new_name = name[15: 22] + name[0: 12] + name[-4:] #选择名字中需要保留的部分
  8. os.rename(file, new_name)

效果如下
2017120415123543078549.png

重命名为中文

注意,一个中文为3个字符,所以“绝命毒师”4个字是12个字符,再加上 S02E01就是18个字符了

  1. # -*- coding: utf-8 -*-
  2. import os
  3. for file in os.listdir('.'): #os.listdir('.')遍历文件夹内的每个文件名,并返回一个包含文件名的list
  4. if file[-2: ] == 'py': #过滤后缀为py的文件
  5. continue #过滤掉改名的.py文件
  6. name = file.replace('Breaking Bad - ', '绝命毒师') #替换空格为_
  7. new_name = name[0: 18] + name[-4:] #选择名字中需要保留的部分
  8. os.rename(file, new_name)

效果如下
注意 中文一个字母占用3个字符
20171204151235415487226.png