利用Python将某个文件夹类的文件重命名

应用场景

最近在进行图片爬取的时候发现下载下来的图片大多名字乱七八糟,所以我在网上找了一下利用Python的重命名的代码,用完之后想要记录下载下来:

完整代码(本人蹩脚的注解)

# -*- coding:utf8 -*-
#加载库文件
import os#os库是交互的第三方库,通常用作对文件的操作,本文中用来修改文件名

class Rename():#创建一个类,其实没必要用类,直接用函数也是可以的
    def __init__(self):#类中的函数叫做方法,这是类中的第一个方法,它的作用是进行初始化
        self.path = 'C:\\Users\\17272\\Desktop\\low2high\\数据集\\自己下载的数据集\\日本妹子高清png\\val_image'  #‘’内放置需要命名处理的文件夹,要拿去用的话需要修改

    def rename(self):#类中的函数叫做方法,这是类中的第二个方法,作用是进行文件的重命名
        FileList = os.listdir(self.path) #os.listdir(path) 返回指定路径下所有文件和文件夹的名字,并存放于一个列表中。
        total_num = len(Filelist) #获取文件长度(个数)
        i = 1  #表示文件的命名是从1开始的
        for item in filelist:
            if item.endswith('.png'):  #选择文件名以png结尾的
                src = os.path.join(os.path.abspath(self.path), item)#os.path.join()函数将路径进行整合;os.path.abspath()函数将路径转为绝对路径;在绝对路径后加上文件名,可以直接找到路径
                dst = os.path.join(os.path.abspath(self.path), str(i) + '.png')#处理后的格式也为jpg格式的,当然这里可以改成png格式
                try:#异常处理,当出现OSError后会跳到下一个图片,不会导致程序中断
                    os.rename(src, dst)
                    print ('converting %s to %s ...' % (src, dst))
                    i = i + 1
                except:
                    continue
        print ('total %d to rename & converted %d jpgs' % (total_num, i))

if __name__ == '__main__':
    demo = Rename()#创建一个BatchRename()的类,名字叫做demo
    demo.rename()
原创文章 3 获赞 3 访问量 154

猜你喜欢

转载自blog.csdn.net/weixin_43537192/article/details/93389559
今日推荐