python_批量修改文件名

1、在movies文件夹下面的所有文件前面都加上[可可可可]

#coding:utf-8
import os
movie_name = os.listdir('./movies')
for temp in movie_name:
        new_name = '[可可可可]' + temp

        os.rename('./movies/'+temp,'movies/'+new_name)

2,把文件名前面乱七八糟的东西都去掉

#coding:utf-8
import os
movie_name = os.listdir('./movies')
for temp in movie_name:
    num = temp.rfind(']')#找到最右边]的下标
    # new_name = '[可可可可]' + temp
    new_name = temp[num+1:]
    os.rename('./movies/'+temp,'movies/'+new_name)

主要还是涉及对字符串的操作

3、问题:

为什么打印

print(movie_name)是一堆乱码

f\xaf\xe5\x8f\xaf]\xe7\x94\xb5\xe5\xbd\xb11\xe5\x89\xaf\xe6\x9c\xac 2.txt'

解决:

显示乱码是因为是中文在python 2 中显示有问题,如果要在python 2 中显示出来的话,可以用

for temp in movie_name:

  print(movie_name)

另外,在python 3 里可以正常打印