python文件批量顺序重命名与批量乱序重命名

正文

批量顺序重命名:按原本文件的排列循序重命名,只改变文件名称,不改变前后文件的位置关系

# 导入os包
import os

def file_rename(path, begin_num):
    """
    @param path: 文件夹路径
    @param begin_num: 起始命名数字
    """
    # 设定文件路径
    i = begin_num
    # 对目录下的文件进行遍历
    for file in os.listdir(path):
        # 判断是否是文件
        if os.path.isfile(os.path.join(path, file)) == True:
            # 设置新文件名
            new_name = file.replace(file, "%d.jpg" % i)
            # 重命名
            os.rename(os.path.join(path, file), os.path.join(path, new_name))
            i += 1
    # 结束
    print("End")


if __name__ == '__main__':
    path = './test_model/total1/'
    file_rename(path, 0)

批量乱序重命名:从结果形式上看也是重命名,不仅只改变文件名称,还改变前后文件的位置关系

import random
import os

def file_rename_shuffle(path):
    """
    @param path: 文件夹路径
    """
    fileList = os.listdir(path)  # 获得所有文件名列表,可以print(fileList)查看
    Imgnum = len(fileList)
    print(Imgnum)
    i = 0
    L = random.sample(range(0, Imgnum), Imgnum)
    print(L)
    filetype = ".jpg"  # 文件类型
    for filename in fileList:
        print(filename)
        portion = os.path.splitext(filename)  # 将文件名拆成名字和后缀
        if portion[1] == filetype:  # 检查文件的后缀
            newname = str(L[i]) + filetype
            print(newname)
            os.rename(path+filename, path+newname)  # 修改名称
            i += 1
            
if __name__ == '__main__':
    path = './test_model/test/' 
    file_rename_shuffle(path)

使用心得

批量顺序重命名应用广泛;
批量乱序重命名多用于将两堆分类好的数据打乱;

如果阅读本文对你有用,欢迎关注点赞评论收藏呀!!!
2021年3月13日17:09:58
python文件批量顺序重命名与批量乱序重命名_第1张图片

你可能感兴趣的:(Python实用脚本,python)