用Python给文件进行改名和去空格

本文主要介绍如何用Python对文件进行操作

前言

一、代码展示

总结​​​​​​​

前言

这里我们介绍一下怎么利用Python去改文件中的名字,以及文件中的空格如何进行替换或者去除,这里用到了一个函数,就是os.rename(src, dst),看名字就知道这就是改名字,src代表旧文件路径,dst代表目标路径


一、代码展示

from glob import glob
import os

class Rename_File(object):
    def __init__(self, path: str, mode: str):
        super(Rename_File, self).__init__()
        """
            path : 文件路径
            mode : 模式,是训练模式还是测试模式(这里的mode我是为了自己的方便加上去的,也可以去除mode这个参数)

            这里需要注意,就是需要改名字的文件和本程序需放置在同一磁盘内,也就是说,你的文件在D盘,那么该程序也应该在D盘运行;
            对文件在同一磁盘的不同文件夹的情况,可以进行改名

            此类的功能:为相应的文件进行改名
            remove_space() : 去除空格
            rename() : 为文件进行重命名
        """
        self.path = path
        self.mode = mode
        
    
    # 替换文件名中的空格为 "-"
    def remove_space(self):
        file_list = os.listdir(self.path)
        print(file_list)
        i = 0
        for item in file_list:
            new_name = item.replace(" ", "_")
            old_dir = os.path.join(os.path.join(self.path, item))
            new_dir = os.path.join(os.path.join(self.path, new_name))
            os.rename(old_dir, new_dir)
    

    # 给文件进行改名
    def rename(self):
        file_list = os.listdir(self.path)
        i = 0
        for item in file_list:
            # 筛选文件后缀是 .jpg 的文件进行改名
            # 这里请注意:.JPG 后缀和 .jpg 后缀虽然都是 jpg图片,但是在程序看来是不同的后缀,务必注意
            if item.endswith(".JPG") | item.endswith(".jpg"):
                # 名字的格式,可以根据所需进行定制
                name = r"Rust_" + self.mode + r"_" + str(i) + ".jpg"
                # 旧名字的路径
                old_dir = os.path.join(os.path.abspath(self.path), item)
                # 新名字的路径
                new_dir = os.path.join(os.path.abspath(self.path), name)
                os.rename(old_dir, new_dir)
                i = i + 1


if __name__ == '__main__':
    path = 'train/Rust'
    mode = "train"
    new_name = Rename_File(path, mode)
    new_name.remove_space()
    new_name.rename()

总结

相对来说还是不难的,可以自己创建一点空的txt文件进行练习。

你可能感兴趣的:(Python,python)