您现在的位置是:群英 > 开发技术 > Python语言
python中批量修改文件名有什么方法?
Admin发表于 2021-11-20 17:45:421465 次浏览

    python中批量修改文件名有什么方法?对于批量修改文件名有两种情况,一种是保留后缀批量修改,另一种是全部修改。这篇文章我们就具体的了解看看怎样实现。

批量修改文件名(保留后缀)

    这种方法,保留了文件原本的后缀。这里主要演示的是对图片名的修改。

# 批量修改文件名
# 批量修改图片文件名
import os
import re
import sys


path = 'F:\Temp\ZZ'
fileList = os.listdir(path)		            # 待修改文件夹
print("修改前:"+str(fileList))		    # 输出文件夹中包含的文件

currentpath = os.getcwd()		            # 得到进程当前工作目录
os.chdir(path)		                        # 将当前工作目录修改为待修改文件夹的位置
n = 1		                                # 名称变量
for fileName in fileList:		            # 遍历文件夹中所有文件
    pat=".+\.(jpg|png|jpeg)"		        # 匹配文件名正则表达式
    pattern = re.findall(pat,fileName)		# 进行匹配
    os.rename(fileName,(str(n)+'.'+pattern[0]))		#文件重新命名
    n += 1		                        	# 改变编号,继续下一项

os.chdir(currentpath)		                # 改回程序运行前的工作目录
sys.stdin.flush()		                    # 刷新
print("修改后:"+str(os.listdir(path)))		#输出修改后文件夹中包含的文件

批量修改文件名(全改)

    这种方法,修改了文件原本的后缀。这里主要演示的是对图片的修改。

import os

path = 'F:\Temp\ZZ'
# 获取该目录下所有文件,存入列表中
fileList = os.listdir(path)

n = 0
for i in fileList:
    # 设置旧文件名(就是路径+文件名)
    oldname = path + os.sep + fileList[n]  # os.sep添加系统分隔符
    # 设置新文件名
    newname = path + os.sep + 'a' + str(n+1) + '.jpg'
    os.rename(oldname, newname)  # 用os模块中的rename方法对文件改名
    print(oldname, '======>', newname)
    n += 1

    代码有个小的注意事项。比如文件名字原本就是a1.jpg, a3.jpg, a6.jpg这样时,运行上述代码会报错。把上面的字母a改成其他的就行了。因为文件夹下原本就有该名称的文件,而程序在修改名字的时候,运行过程中就会出现两个同名文件共存的情况。

读取文件下的所有文件名

import os

# 输出所有的文件夹名和文件名
path = 'F:\Temp\ZZ'
dataFileList = os.listdir(path)
for i in dataFileList:
    print(i)


# 读取特定的文件名
txtFile = []
for filename in dataFileList:
    j = filename.split('.')
    if len(j)==2:
        if j[1]=='txt':
            txtFile.append(filename)

总结

    以上就是关于python批量修改文件名的介绍,上述两种方法都具有一定的参考价值,有需要的朋友可以了解看看,希望对大家学习python有帮助,想要了解更多可以继续浏览群英网络其他相关的文章。

文本转载自脚本之家

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2021-12-04 17:46:55 
摘要:这篇文章给大家分享的是Python中shutil模块的相关内容。文中介绍非常详细,对大家学习和理解都有一定的帮助,感兴趣的朋友接下来一起跟随小编看看吧。
2022-06-01 17:30:13 
摘要:一、什么是v-bind指令v-bind指令用于响应更新html特性,允许将一个或多个属性动态绑定到表达式。v-bind是应用在动态属性上面的。二、语法v-bind语法如下:v-bind:动态属性名称=
2022-09-05 17:28:00 
摘要:在web前端中,相对路径就是指由当前文件所在的路径引起的跟其它文件(或文件夹)的路径关系,是相对于当前文件的目标文件位置;简单来说,就是以当前文件为参考点,来确定不同文件的路径,相对路径一般会以“./”、“../”开始。好处:当整个项目移动时,项目内文件之间的相对关系没有改变,之前设置的路径任然是准确的,不用进行修改。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部