批量修改文件名 python

1. 这一类os.rename()方法常见的缺点就是,当文件名的某部分恰巧与后缀名相同时,会导致文件失去类型。如:你要去掉文件名01.xml.xml里的.xml , 但是经过替换后只剩下01,也就是类型也被弄没了。故遇到这种情况,推荐方法2.

# -*- coding: UTF-8 -*-
import os

#获得文件夹下文件名列表
path=r"G:\BaiduNetdiskDownload\第1册"
path=unicode(path,"utf8")
file_list=os.listdir(path)

#选择要重命名的文件夹路径
os.chdir(path)

#将文件名中的Lesson和空格用空字符串替代
for file in file_list:
    os.rename(file,file.replace("Lesson ",""))

2.此方法的技巧在于 num = temp.rfind(']')直接做了定位,这样就可以指定要替换的局部具体位置了。

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)
import os
path = r'C:\Users\admin\Desktop\keras-yolo3-master\VOCdevkit\VOC2007\Annotations'

movie_name = os.listdir(path)
for temp in movie_name:
    # print(temp)
    num = temp.rfind('.')#找到最右边小数点的下标
    # print(num)
    new_name = temp[:num]
    os.rename(r'C:\Users\admin\Desktop\keras-yolo3-master\VOCdevkit\VOC2007\Annotations/'+temp,
              r'C:\Users\admin\Desktop\keras-yolo3-master\VOCdevkit\VOC2007\Annotations/'+new_name)

猜你喜欢

转载自blog.csdn.net/qq_39938666/article/details/88747679