python文件重命名,在不打乱原始顺序仅对名字进行修订

网上有些方法虽然能够对文件进行排序,但是并不是按照初始顺序进行命名的,如:

  • 乱序文件夹下为:3.png, 5.png,8.png,11.png,正常情况下重名名后的对应关系为:3.png——1.png, 5.png——2.png,8.png——3.png,11.png——4.png
  • 尝试了网上的一些方法,虽然也能够进行排序,但是排序前对应关系打乱,如3.png——2.png, 5.png——1.png,8.png——4.png,11.png——3.png, 这是由于在进行读取乱序文件夹(3.png, 5.png,8.png,11.png)时是随机的,导致优先读取优先命名,这种情况具体细节请参加我的另一篇博客:https://blog.csdn.net/weixin_40893448/article/details/129740047

注意:在进行排序前,需要将乱序的文件进行备份,因为排序后会变成空文件夹

import os

# 打开文件所在的文件夹路径
path = r'G:\膝关节数据\公共数据集\SKI10Data\ceshi\label/'

# 保存文件的文件夹路径
path1 = r'G:\膝关节数据\公共数据集\SKI10Data\ceshi\重命名\lalel'
if not os.path.exists(path1):
    os.makedirs(path1)
else:
    print('dir already exist!')

i = 1
for k in range(1,21):
	# s可以修改为自己的文件名形式
    s = "%d.png" % k

    for file in os.listdir(path):

        # print('file名字:',file,type(file))
        # print('s名字:',s,type(s))
        # 判断文件名中是否含有字符串m
        if s == file:
            print('file名字:',file,type(file))
            print('s名字:',s,type(s))

            # 如果想要在数字统一为3位,不够的前面补0,则使用new_name="%03d.png" % i
            new_name="%d.png" % i
            os.rename(os.path.join(path,file),os.path.join(path1,new_name))
            i+=1

在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三少的笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值