Python脚本的实现文件重命名

第一次尝试用python写一个完整有用的程序,这个脚本实现了能把当前文件的指定文件按一定顺序进行重新命名,还是有一定的适用价值

下面贴代码

#coding:utf-8
import os
perfix=‘test‘ #perfix为重命名后的文件起始字符
length=2 #length为除去perfix后,文件名要达到的长度
base=1 #文件名的起始数
format=‘txt‘ #文件的后缀
#函数PadLeft将文件名补全到指定长度
#str为将要补全的字符
#num为要达到的长度
#padstr 为达到长度所添加的字符

def PadLeft(str,num,padstr):
stringlength=len(str)
n=num-stringlength
if n>=0:
str=padstr*n+str
return str
#为了避免误操作,这里先提示用户
print (‘the files in %s will be renamed‘ % os.getcwd())
input=raw_input(‘press y to continue\n‘) #获取用户输入
if input.lower()!=‘y‘:#判断用户输入,已决定是否执行重命名操作
exit()
filenames=os.listdir(os.curdir) #获取当前目录的内容
i=base-1
for filename in filenames: #遍历目录中的内容,进行重命名操作
i=i+1
if filename!="rename.py" and os.path.isfile(filename):
name=str(i) #将 i转化成字符
name=PadLeft(name,length,‘0‘) #将name补全到指定长度
t=filename.split(‘.‘)#分割文件名,以检查其是否是索要修改的类型
m=len(t)
if format==‘‘: #如果未指定类型,则更改当前目录中的左右文件
os.rename(filename,perfix+name+‘.‘+t[m-1])
else: #否则值修改指定类型
if t[m-1]==format:
os.rename(filename,perfix+name+‘.‘+t[m-1])
else:
i=i-1#保证i连续
else:
i=i-1#保证i连续

时间: 2024-10-24 22:39:59

Python脚本的实现文件重命名的相关文章

用Python写的批量文件重命名

  有些时候下载图片或其他文件,文件名都怪怪的,可选的办法是下载一个文件批量重命名的软件.当然,如果想自己'DIY'一把的话编个Python脚本最好不过了. 下面的代码实现的对指定类型的文件进行批量重命名.拷贝下面的代码到待批量命名的文件夹下,保存为xx.py直接运行,程序会提示需要批量命名的扩展名,以及重命名时的文件前缀. # -*- coding: cp936 -*- """ Created on Wed Jun 25 16:24:23 2014 @author: Adm

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

经常会遇到下载的文件或电子书,名字中间都包含了一些网址信息,实际使用中由于名字太长不方便,下面的脚本使用正则表达式来对目录下的所有文件重命名:例如: 修改前:[大家网]Mac OS X for Unix Geeks[www.TopSage.com].mobi修改后:Mac OS X for Unix Geeks.mobi python代码如下 import osimport re def rename_dir(dir,regex,f):  if not os.path.isdir(dir) or

python之批量文件重命名

批量文件重命名问题,生活中或是工作中会经常用到.方法比较low多试验几次就可以了. # -*- coding: utf-8 -*- # @Time :2018/8/25 20:18 # @Author : ELEVEN # @File : 011_批量重命名文件.py # @Software: PyCharm import os # 1. 获取一个要重命名的文件夹的名字 folder_name = input("请输入要重命名的文件夹:") # 2. 获取那个文件夹中所有的文件名字 f

python3批量为文件重命名

简介 为什么使用python批量重命名而没有使用shell,python对文字的处理更灵活,对于文件名中的空格不会出现报错. 代码: #!/usr/bin/env python # -*- coding:utf-8 -*- """ @author:Aiker Zhao @file:rename_all.py @time:下午10:29 """ import os path = "M:\\bd1\\都挺好\\" new_path

利用datafile copy将数据文件重命名

思路: o 利用RMAN对数据文件做copy o 将数据文件offline o switch文件名,这一步将更改控制文件中数据文件对应的文件名 o recover数据文件 o 将数据文件online,恢复生产 注:也可以利用这种思路做DATABASE COPY,然后做SWITCH DATABASE,迁移数据库... 实验过程如下: ====================================== SQL> archive log list; Database log mode    

java 获取文件名(不包括文件的后缀)和文件重命名

获取文件名(不包括后缀) originalFileName.substring(0, originalFileName.lastIndexOf(".")) 文件重命名 public void renameFile(String file, String toFile) { File toBeRenamed = new File(file); //检查要重命名的文件是否存在,是否是文件 if (!toBeRenamed.exists() || toBeRenamed.isDirector

oc NSFileManager 文件夹创建、文件移动、文件复制、文件重命名

// 初始化管理类 NSFileManager * manager = [NSFileManager defaultManager]; // 路径 NSString * DirectoryPath = [NSHomeDirectory() stringByAppendingPathComponent:@"/desktop/我的文件夹1/我的文件夹2"]; NSError * error = nil; if ([manager createDirectoryAtPath:Director

ListView 文件重命名

unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, ComCtrls, StdCtrls; type   TForm1 = class(TForm)     ListView1: TListView; ListView2: TListView; Button1: TButton; Edit1: TEdit; Edit2:

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

原因: 因为在网上下载视频教程,有的名字特别长,一般都是机构或者网站的宣传,不方便直接看到视频的简介,所以做了下面的第一个功能. 因为老师发的课件中,文件夹太多,想把docx都放在同一个文件夹下面,一个一个找出来太麻烦,所以做了第二个功能.       最近刚刚学了Java文件和流的知识,所以正好练练手,这也是自己的第一个exe程序,分享一下哈. (导出jar文件,以及用工具exe4j生成exe文件,这部分省略了哈) 用到的知识: 用到Java中文件,流的知识,以及简单的GUI知识. 功能: