博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python文件_批量改名
阅读量:4315 次
发布时间:2019-06-06

本文共 1462 字,大约阅读时间需要 4 分钟。

1 #! /usr/bin/env python 2 #coding=gbk 3 #文件操作实例--将文件夹下所有图片名称加上'_test' 4 import re,os,time 5 #str.split(path) 分割字符串 6 #'连接符'.join(list)将列表组成字符串 7  8 def change_name(path): 9     global i #这里要定义在函数里面,定义在外面会报错10 #判断路径是否是文件或者目录,如果不是,返回错误11     if not os.path.isdir(path) and not os.path.isfile(path):12         return false13     if os.path.isfile(path):14         file_path=os.path.split(path)#分解文件路径组成list存入file_path15         lists=file_path[1].split('.')#分割文件与文件扩展名16         file_ext=lists[-1]#取出后缀名 等价于:file_ext=lists[1],list只有两个数17         img_ext=['bmg','jpeg','gif','psd','png','jpg']#图片后缀名18         if file_ext in img_ext:19             #这里将新文件路径组成,改名的话就将list[0]替换掉20             os.rename(path,file_path[0]+'/'+lists[0]+'_test.'+file_ext)21             i=i+122     elif os.path.isdir(path):23         for x in os.listdir(path):24             #通过join将文件添加到目录后面组成文件25             change_name(os.path.join(path,x))#os.path.join()在路径处理上很有用26 os.chdir("g:/文件操作")27 img_dir = 'g:\\文件操作\\图片1'28 img_dir = img_dir.replace('\\','/')29 i=030 start=time.time()#开始时间31 change_name(img_dir)32 c=time.time()-start#计算消耗时间33 print('共处理了%s张图片'%(i))34 print ('程序运行耗时:%0.2f'%(c))

这里如果将global i 定义在函数外面,运行的时候会报错:local variable 'i' referenced before assignment。这个错误的意思就是变量i在引用前没有定义,但是在最开始已经定义了的,通过global关键字引用全局变量来解决问题。在python的函数中和全局同名的变量,如果你有修改变量的值就会变成局部变量,在修改之前对该变量的引用自然就会出现没定义这样的错误了,如果确定要引用全局变量,并且要对它修改,必须加上global关键字。

转载于:https://www.cnblogs.com/tingfenglin/p/4424289.html

你可能感兴趣的文章
sqoop 补充
查看>>
什么是好代码?
查看>>
简易五子棋AI算法分析
查看>>
2018.12.1 web项目中解决乱码问题的一个工具类
查看>>
JSP 中 forward 和 redirect 的区别_2014.12.31
查看>>
解释性语言,编译性语言,脚本语言
查看>>
Yii处理流程
查看>>
第四周学习进度总结
查看>>
js设计模式-原型模式
查看>>
css利用padding百分比实现图片自适应高度
查看>>
SPFA_vertor
查看>>
Android中判断网络连接是否可用及监控网络状态
查看>>
spring boot jsp web项目部署
查看>>
EL表达式运算符
查看>>
26.Remove Duplicates from Sorted Array
查看>>
-TextView使用SpannableString设置复合文本
查看>>
git tag 标签操作
查看>>
Flex 弹性布局
查看>>
python爬虫之git的使用(origin说明)
查看>>
HDOJ2004 ( 成绩转换 ) 【水题】
查看>>