Python如何对文件重命名,具体操作是什么
Admin 2022-08-11 群英技术资讯 1042 次浏览
这篇文章给大家分享的是“Python如何对文件重命名,具体操作是什么”,对大家学习和理解有一定的参考价值和帮助,有这方面学习需要的朋友,接下来就跟随小编一起学习一下吧。直接贴代码:
import os
srcFile = './actwork/linkFile/allExtLinks - 副本.txt'
dstFile = './actwork/linkFile/allExtLinks - copy.txt'
try:
os.rename(srcFile,dstFile)
except Exception as e:
print(e)
print('rename file fail\r\n')
else:
print('rename file success\r\n')
在处理机器学习的图片时,需要将图片根据类别放入不同文件夹中,在文件夹下也想将图片用数字递增重命名一下,方便后续处理。
首先,我们看一下python的重命名函数:
os.rename(src,dst)
src:要修改的目录名dst:修改后的目录名如果dst是一个存在的目录, 将抛出OSError。
注意:src和dst都是完整路径+文件名
首先,我们先对文件夹重命名
import os def myrename(path): file_list=os.listdir(path) i=0 for fi in file_list: old_name=os.path.join(path,fi) new_name=os.path.join(path,str(i)) os.rename(old_name,new_name) i+=1 if __name__=="__main__": path="D:/test/121" myrename(path)

稍微改动一下,显得没有那么low
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in enumerate(file_list):
old_name=os.path.join(path,fi)
new_name=os.path.join(path,"N0."+str(i))
os.rename(old_name,new_name)
if __name__=="__main__":
path="D:/test/121"
myrename(path)

效果是一样的,enumerate函数的作用就不再赘述了,我们还可以使用python zip来进行修改:
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in zip(range(len(file_list)),file_list):
old_name=os.path.join(path,fi)
new_name=os.path.join(path,"The."+str(i))
os.rename(old_name,new_name)
if __name__=="__main__":
path="D:/test/121"
myrename(path)
效果一样:

上面的三种方法都是可以使用的,只需要稍微改动一下,我以函数enumerate为例演示一下:

复制粘贴一堆,作为测试用,在函数中加入一个try-except,防止文件重命名出错,这里重命名需要是相同格式的文件,否则就会报错:
import os
def myrename(path):
file_list=os.listdir(path)
for i,fi in enumerate(file_list):
old_dir=os.path.join(path,fi)
filename="my"+str(i+1)+"."+str(fi.split(".")[-1])
new_dir=os.path.join(path,filename)
try:
os.rename(old_dir,new_dir)
except Exception as e:
print(e)
print("Failed!")
else:
print("SUcess!")
if __name__=="__main__":
path="D:/test/121"
myrename(path)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了python3 实现mysql数据库连接池的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了Python3中对range()逆序的解释,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Matplotlib作为用于数据可视化的Python软件包,能够绘制多种2D图像,它使用简单、代码清晰易懂,深受广大技术爱好者喜爱。本文主要介绍了通过 Matplotlib绘制振动图、箱型图、提琴图,需要的朋友可以参考一下
这篇文章主要介绍了Python文件名的匹配之clob库,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助哟,需要的朋友可以参考下
在本篇文章里小编给大家分享的是一篇关于Flask中提供静态文件的实例及相关知识点详解,有兴趣的朋友们可以跟着学习下。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008