如何用python批量改文件名

 我来答
sd...2@sina.com
2017-01-07 · 超过66用户采纳过TA的回答
知道答主
回答量:89
采纳率:0%
帮助的人:49.5万
展开全部
引入os模块(python中操作文件的模块)。

2
定义修改名称的函数rename。
在rename函数中定义一个储存路径的变量path,并将要修改文件名的文件夹的路径赋值给该变量。

3
继续向函数中添加功能代码

4
最后调用这个rename函数这个脚本就写完了。执行这个文件,就会将文件夹下所有的文件改成 这里是你要改的文件名.后缀名 这样的格式,显然我们一般情况下不是需要这样的效果的。下面我列出了一些常用的改文件名的方法。

5
列出代码,便于复制
import os;

def rename():
path="这里替换为你的文件夹的路径";

filelist=os.listdir(path)#该文件夹下所有的文件(包括文件夹)
for files in filelist:#遍历所有文件
Olddir=os.path.join(path,files);#原来的文件路径
if os.path.isdir(Olddir):#如果是文件夹则跳过
continue;
filename=os.path.splitext(files)[0];#文件名
filetype=os.path.splitext(files)[1];#文件扩展名
Newdir=os.path.join(path,"这里是你要改的文件名"+filetype);#新的文件路径
os.rename(Olddir,Newdir);#重命名

rename();
END
添加改名规律
1
(1).序号依次递增型
import os;

def rename():
count=0;
path='C:\\Users\\admin\\Desktop\\test';

filelist=os.listdir(path)#该文件夹下所有的文件(包括文件夹)
for files in filelist:#遍历所有文件
Olddir=os.path.join(path,files);#原来的文件路径
if os.path.isdir(Olddir):#如果是文件夹则跳过
continue;
filename=os.path.splitext(files)[0];#文件名
filetype=os.path.splitext(files)[1];#文件扩展名
Newdir=os.path.join(path,str(count)+filetype);#新的文件路径
os.rename(Olddir,Newdir);#重命名
count+=1;

rename();

2
(2).批量取分隔符前面/后面的名称
import os;

def rename():
path='C:\\Users\\admin\\Desktop\\test';

filelist=os.listdir(path)#该文件夹下所有的文件(包括文件夹)
for files in filelist:#遍历所有文件
Olddir=os.path.join(path,files);#原来的文件路径
if os.path.isdir(Olddir):#如果是文件夹则跳过
continue;
filename=os.path.splitext(files)[0];#文件名
filetype=os.path.splitext(files)[1];#文件扩展名

if filename.find('---')>=0:#如果文件名中含有---
Newdir=os.path.join(direc,filename.split('---')[0]+filetype);
#取---前面的字符,若需要取后面的字符则使用filename.split('---')[1]
if not os.path.isfile(Newdir):
os.rename(Olddir,Newdir);

rename();
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式