有些时候下载图片或其他文件,文件名都怪怪的,可选的办法是下载一个文件批量重命名的软件。当然,如果想自己‘DIY’一把的话编个Python脚本最好不过了。

下面的代码实现的对指定类型的文件进行批量重命名。拷贝下面的代码到待批量命名的文件夹下,保存为xx.py直接运行,程序会提示需要批量命名的扩展名,以及重命名时的文件前缀。

# -*- coding: cp936 -*-
"""
Created on Wed Jun 25 16:24:23 2014 @author: Administrator
""" import os def doRename():
fi_num_cnt = 1
input_max_len = max(list_len)
preFix=raw_input("请输入文件前缀:\n")
for ifile in ext_list:
new_name = preFix+str(fi_num_cnt)+'.'+ext
while True:
if os.path.exists(new_name):
fi_num_cnt+=1
new_name = preFix+str(fi_num_cnt)+'.'+ext
else:
break print ifile.rjust(input_max_len,' '),3*' ','重命名为:'.ljust(5,' '),new_name.rjust(10,' ')
try:
os.rename(ifile,new_name)
except Exception,e:
print e
fi_num_cnt +=1
if __name__=='__main__':
while True:
ext = raw_input("请输入要批量命名的文件后缀名:如jpg、txt。直接回车则退出程序\n")
if ext == '':
exit()
allFiles = os.listdir(os.curdir)
ext_list=[]
list_len=[]
for ifile in allFiles:
if os.path.isfile(ifile) and os.path.splitext(ifile)[1][1:].lower()==ext \
and ifile != os.path.basename(__file__):
ext_list.append(ifile)
list_len.append(len(ifile))
if len(ext_list)==0:
print '未发现 *.',ext,'类型的文件'
else:
break print '找到如下*.',ext,'文件:'
for ifile in ext_list:
print ifile
print 25*'*' while True and len(ext_list)!=0:
choice = raw_input('您确定要对这些文件批量重命名吗?(Y/y或直接回车--确定,N/n--取消)\n')
if choice=='' or choice=='Y' or choice == 'y':
doRename()
print '处理完毕!'
raw_input()
break
elif choice == 'N' or choice =='n':
break

用Python写的批量文件重命名的更多相关文章

  1. python实现批量文件重命名

    本文实例为大家分享了python批量文件重命名的具体代码,供大家参考,具体内容如下 问题描述 最近遇到朋友求助,如何将大量文件名前面的某些字符删除. 即将图中文件前的编号删除. Python实现 用到 ...

  2. python工具 - 批量文件重命名

    日常工作中经常会遇到这样的情况,需要将某个文件夹下的文件按着一定的规则进行重命名,当文件数量及其庞大的时候手工一个一个的去修需要耗费大量的时间,以下python工具可以协助批量修改文件名. 场景:某文 ...

  3. Java用来进行批量文件重命名,批量提取特定类型文件

    原因: 因为在网上下载视频教程,有的名字特别长,一般都是机构或者网站的宣传,不方便直接看到视频的简介,所以做了下面的第一个功能. 因为老师发的课件中,文件夹太多,想把docx都放在同一个文件夹下面,一 ...

  4. Python批量文件重命名

    今天,得到一个里面都是图片的文件夹,但是图片都没有后缀,因此想用Pythton批量地为所有的文件加上".jpg"的后缀,代码如下: #-*- coding:utf-8 -*- #重 ...

  5. 批量文件重命名工具-极力推荐 advanced renamer

    http://www.advancedrenamer.com/  功能太强大了,自己慢慢探索吧.

  6. Python实例31[批量对目录下文件重命名]

    经常会遇到下载的文件或电子书,名字中间都包含了一些网址信息,实际使用中由于名字太长不方便,下面的脚本使用正则表达式来对目录下的所有文件重命名:例如: 修改前:[大家网]Mac OS X for Uni ...

  7. asp.net 文件批量移动重命名

    最近闲时写了个批量移动重命名文件的工具 点击下载工具

  8. python学习笔记--文件重命名,删除及文件夹

    文件重命名 import os os.rename('123.txt','456.txt') 删除文件 >>> import os >>> os.remove('4 ...

  9. Alt+Shift+R组合键,用来在一个java文件中批量的重命名变量。

    myeclipse和eclipse集成编译软件,都提供了一个快捷键用来批量重命名变量:Alt+Shift+R组合键,用来在一个java文件中批量的重命名变量.扩展知识:如果想要重命名文件名,又不想手动 ...

随机推荐

  1. uc/os任务创建

    问题描述:      uc/os中任务创建 问题解决: 创建一个任务,任务从无到有.任务创建函数分两种, 一种是基本的创建函数OSTaskCreate, 另一种是扩展的任务创建函数OSTaskCrea ...

  2. [转]LINQ语句之Select/Distinct和Count/Sum/Min/Max/Avg

    在讲述了LINQ,顺便说了一下Where操作,这篇开始我们继续说LINQ语句,目的让大家从语句的角度了解LINQ,LINQ包括LINQ to Objects.LINQ to DataSets.LINQ ...

  3. 利用钩子函数来捕捉键盘响应的windows应用程序

    一:引言: 你也许一直对金山词霸的屏幕抓词的实现原理感到困惑,你也许希望将你的键盘,鼠标的活动适时的记录下来,甚至你想知道木马在windows操作系统是怎样进行木马dll的加载的…..其实这些都是用到 ...

  4. RCC 2014 Warmup (Div. 2) ABC

    题目链接 A. Elimination time limit per test:1 secondmemory limit per test:256 megabytesinput:standard in ...

  5. WPF使用第三方的字体(TTF文件)

    一.准备好你要使用的字体文件,以TTF结尾的文件,然后复制到项目中,并设置Build Action(生成操作)为Resource(资源): 二.在App.xaml中或者你需要的地方添加资源的定义: & ...

  6. R语言学习笔记:列表

    R列表时以其他对象为成分的有序集合,列表的成分和向量不同,它们不一定是同一种数据类型,模式或者长度.例: > my.list<-list(stud.id=34453, + stud.nam ...

  7. Android安装常见问题

    在初次运行Android程序的时候会出现类似的错误,导致程序无法继续运行,如下面的几个例子: 问题1:PC安卓模拟器 PANIC: Could not open: C:\Documents and S ...

  8. 排查Java线上服务故障的方法和实例分析

    前言 作为在线系统负责人或者是一个技术专家,你可能刚刚接手一个项目就需要处理紧急故障,或者被要求帮忙处理一些紧急的故障,这个时候的情景是: (1)你可能对这个业务仅仅是听说过,而不怎么真正了解: (2 ...

  9. C#如何在派生类中不显示父类的一些属性以及TypeDescriptor使用

    public SonClass:FatherClass { 定义属性 .... } Type thisType = typeof(SonClass);方法一: PropertyInfo[] pis = ...

  10. Extension Method[上篇]

    在C#3.0中,引入了一些列新的特性,比如: Implicitly typed local variable, Extension method,Lambda expression, Object i ...