使用python进行文件批量重命名

五迷三道 提交于 2019-11-30 10:39:03

python文件重命名

最近由于要处理大量的图片文件, 从网上下载下来的图片名称各不相同, 但又有一些规律, 故而采用python对文件进行批量重命名

  • 目的:对文件名进行简单的分割处理, 提取出图片的分辨率信息并保存至相应文件, 将文件名按照顺序重命名, 便于后续处理
import os
def rename(dir_path):
    filelist = os.listdir(dir_path)
    counter = 0
    posf = open("./posdata.txt", "a")
    for item in filelist:
        #set the old file name 
        oldname = dir_path + r"\\" + filelist[counter]
        #set the new file name 
        newname = dir_path + r"\\" + str(counter) + "." + item.split("jpg")[2].split(".")[1]
        #write the resolution information to the file
        width, height = item.split("jpg")[2].split(".")[0].split("x")
        #rename the file
        os.rename(oldname, newname)
        #print oldname , newname
        print width
        print height
        #write the width and height to the posf file
        width = width + "\n"
        posf.write(width)
        height = height + "\n"
        posf.write(height)
        counter += 1
        posf.close()
if __name__ == "__main__":
    dir_path = r"F:\\WorkFiles\\personYUV"
    rename(dir_path)
  • 由于处理的文件的名称比较规整, 所以没有采用较为复杂的正则表达, 而是采用了较为简单的字符串分割, 原始图片信息和重新命名后的信息以及分辨率信息如下图所示
    原始名称信息
    修改后的名称信息
    图片分辨率信息
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!