重命名批处理python脚本


Posted in Python onApril 05, 2013

将Copy of ********.bmp或者Copy of Copy of ********.bmp 此类文件统一命名为********0.bmp 或者********00.bmp等格式,后面的0的个数代表********.bmp出现的次数+1。写了个下面的小脚本:

import os 
""" 
这个程序是用来将文件名改名,因为在文件夹里面有很多Copy of 重文件名,因此去掉windows 
重命名风格而换用新的累加命名机制 
作者:chenxofHit@gmail.com 
时间:2011年4月13日 
""" 
def getFileNames(dirs, dict): 
#dir为目录名,lst列表 
filenames=os.listdir(dirs) 
for name in filenames: 
key = filenames[filenames.index(name)] 
sign = "Copy Of " 
judge = key.find(sign) 
if (judge != -1 ): 
dict[key] = 1 
else: #提取其中的真实文件名 
trueKey= key[-12:] #因为真实的文件名都是在12位 
if trueKey not in dict: #字典中不存在 
dict[trueKey]=1 
os.rename(dirs+str(os.sep)+name,dirs+str(os.sep)+trueKey) 
else: 
#split finames 
newKey= str(trueKey[:-4])+str('0'*dict[trueKey])+ str(trueKey[-3:]) 
dict[trueKey] = dict[trueKey]+1 
os.rename(dirs+os.sep+name,dirs+os.sep+newKey) if '__name__=__main__': 
dict={} 
dirs = "C://temp" 
getFileNames(dirs, dict)

用到了字典,用到了os模块,学到了一些东西,呵呵!
Python 相关文章推荐
python实现的文件夹清理程序分享
Nov 22 Python
20招让你的Python飞起来!
Sep 27 Python
Python 3.x读写csv文件中数字的方法示例
Aug 29 Python
基于python实现学生管理系统
Oct 17 Python
Python实现按逗号分隔列表的方法
Oct 23 Python
创建Shapefile文件并写入数据的例子
Nov 26 Python
Python networkx包的实现
Feb 14 Python
Python爬虫爬取杭州24时温度并展示操作示例
Mar 27 Python
python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例
Apr 02 Python
Pyecharts地图显示不完成问题解决方案
May 11 Python
python numpy实现rolling滚动案例
Jun 08 Python
几款Python编译器比较与推荐(小结)
Oct 15 Python
Python编写的com组件发生R6034错误的原因与解决办法
Apr 01 #Python
Python中用Ctrl+C终止多线程程序的问题解决
Mar 30 #Python
python利用hook技术破解https的实例代码
Mar 25 #Python
利用python获得时间的实例说明
Mar 25 #Python
python 将字符串转换成字典dict
Mar 24 #Python
使用python提取html文件中的特定数据的实现代码
Mar 24 #Python
python 切片和range()用法说明
Mar 24 #Python
You might like
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
PHP默认安装产生系统漏洞
2006/10/09 PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
2013/06/28 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
用 Composer构建自己的 PHP 框架之使用 ORM
2014/10/30 PHP
PHP性能分析工具XHProf安装使用教程
2015/05/13 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
thinkphp 手机号和用户名同时登录
2017/01/20 PHP
PHP实现小程序批量通知推送
2018/11/27 PHP
javascript 面向对象编程基础 多态
2009/08/21 Javascript
jquery中toggle函数交替使用问题
2015/06/22 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
Bootstrap Table使用方法详解
2016/08/01 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
React Router基础使用
2017/01/17 Javascript
vue 实现把路由单独分离出来
2020/08/13 Javascript
[01:56]《DOTA2》中文配音CG
2013/04/22 DOTA
[05:20]2018DOTA2亚洲邀请赛主赛事第三日战况回顾 LGD率先挺进胜者组决赛
2018/04/06 DOTA
[52:41]OG vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/20 DOTA
探究数组排序提升Python程序的循环的运行效率的原因
2015/04/01 Python
Python模拟登录验证码(代码简单)
2016/02/06 Python
全面了解Python环境配置及项目建立
2016/06/30 Python
使用Python从零开始撸一个区块链
2018/03/14 Python
使用python os模块复制文件到指定文件夹的方法
2019/08/22 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
2019/10/28 Python
使用CSS Grid布局实现网格的流动
2014/12/30 HTML / CSS
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
日本酒店、民宿、温泉旅馆、当地旅行团中文预订:e路东瀛
2019/12/09 全球购物
优秀应届生推荐信
2013/11/09 职场文书
自我评价怎么写好呢?
2013/12/05 职场文书
酒店管理毕业生自荐信
2014/05/25 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
那些美到让人窒息的诗句,值得你收藏!
2019/08/20 职场文书
给numpy.array增加维度的超简单方法
2021/06/02 Python