python文件名批量处理(超详细,看完估计你也会)

1.需要用到python中的os库

import os  #必须导入哦!!

2.批量处理步骤(文字说明)

1)第一步:先找到你要处理的文件夹

   文字说明:因为文件的\是可以和其他的字符组成转义字符,所以我在第一个方法,在双引号前面加了一个r
path = r"C:\Users\chenzhou\Desktop\MouseWithoutBorders"

在这里插入图片描述

2)第二步:把这个文件夹里面的数据全部写到列表里面

filename_list = os.listdir(path)#存入列表

3)第三步进行for循环进行遍历(小规模的量可以,大量需要用别的方法)

我的这个文件夹有一个我新建的(姓名_身份证号(假的))的txt文件
在这里插入图片描述

文字说明:我为了方便区分文件名,我都是用下划线区分的
for file in filename_list:
	str = file
	p1, p2, p3 = str.partition('_') #我用下划线做了区分
	print(p1)
    print(p2)
    print(p3)

在这里插入图片描述

4)第四步:为os.rename做准备(重要)

我先说一下:rename的工作原理为:
++++++++++++++++++++分界线++++++++++++++++++++++

student_name:原始的文件名,就是要准备修改的文件名** (需要路径哦,会用到path) **
new_name:修改以后的文件名**(需要路径哦,会用到path)**
os.rename(student_name,new_name)

+++++++++++++++++++分界线+++++++++++++++++++++++

1.student_name
student_name = path +"//"+ filename[a]#这是用到了索引,等等会说
2.new_name
new_name = path+'//'+p3#这是拿到了下划线后面的内容

#如果要拿下划线前面的数据
new_name = path+'//'+p1
3.问题点:

1.path+"//"+文件夹里面所有的文件,通过for循环进行索引(每执行一次就+1)
path就是前面的当前的文件夹路径

为什么path后面要加"//" ?
答:文件夹和子文件夹都有\进行区分。所以必须加这个进行区分

在这里插入图片描述
如果不加的话,父级文件夹和自己文件夹就无法区分
加了以后:
在这里插入图片描述
刚刚写反了,嘿嘿嘿,我还是新手,不好意思哈,下面才是对的
在这里插入图片描述

5.rename的使用

前面说了这么多,就是说换的文件名不能只是单纯的文件名,而是前面要接路径,路径和文件的中间必须接"\"
在这里插入图片描述

索引

在这里插入图片描述

可能有人会问,这是因为文件内容非常多,path后面就只能接一个文件名,如果里面有多个文件的话,会报错,所以我们采用for循环,每循环一次就把a递增+1(从0开始索引)

最后运行一下就可以了

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

懂.py的小陈

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

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

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

打赏作者

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

抵扣说明:

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

余额充值