本文目录一览:
- 1、python批量重命名文件,求助大神!!拜托拜托了!
- 2、怎么对python的dataframe重命名
- 3、用python使文件名按照一定规则批量重命名
- 4、list对象如何实现重命名(Python)?
- 5、python怎样批量修改文件名
- 6、怎么用python批量修改文件名
python批量重命名文件,求助大神!!拜托拜托了!
不清楚你的实际文件/情况,仅以问题中的样例/说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.py
# encoding: utf-8
# Python 3.9.6
import os
import sys
srcfile='./文件名.txt'
dstfolder='D:/ZLSJ'
if not os.path.exists(srcfile):
print('"%s" does not exist' % srcfile)
sys.exit()
if not os.path.exists(dstfolder):
print('"%s" does not exist' % dstfolder)
sys.exit()
f=open(srcfile, encoding='utf-8')
content=f.readlines()
f.close()
file_list=[]
for file in os.listdir(dstfolder):
if file.lower().endswith('.txt'):
file_list.append(file)
n=0
#如果原文件名全部以纯数字命名,则对原文件升序排列
file_list.sort(key=lambda e:int(e[0:-4]))
for file in file_list:
if n len(content):
newname=content[n].strip()
oldfile=os.path.join(dstfolder, file)
newfile=os.path.join(dstfolder, newname)
print('{0} -- {1}'.format(oldfile, newname))
os.rename(oldfile, newfile)
n=n+1
怎么对python的dataframe重命名
使用rename函数
1、字典型数据类型
例:
d = {"星座":"Constellation", '身高':'Height'}
df.rename(columns=d)
2、函数的方法
def f(x):
return x[0]
df.rename(columns=f)
用python使文件名按照一定规则批量重命名
所用模块:import os
(一)打开文件夹,获得旧文件名
path=r"D:\exp\resultdata" //文件夹途径
for (root, dirs, files) in os.walk(path):
os.walk(path)//遍历D:\exp\resultdata下文件
(二)获得新文件名(如何打开一个文件)
一般新文件名都保存在一个文件中
new_names_files=open('文件名.txt','r')
content=open('文件名.txt','r')(此时content是一个含有所有new name 的列表)
注意:对新名字(字符串)会有一些操作
(1)对文件名(字符)的分割
用split()进行分割
a=''wer.werrew/"
(2)list 添加新的元素、
用append()进行添加
(3)字典添加新的元素
用update()进行添加
实例:
(三)重命名
利用os.rename()函数
实例:旧名字与新名字的数字相对
file=['1.max','2.max'……]//旧名字
for file in files:
oldname = os.path.join(root,file)
namesp=file.split('.')
new_namesp=d[int(namesp[0])]//数字相对
newname = os.path.join(root,new_namesp)
os.rename(oldname,newname)
list对象如何实现重命名(Python)?
# coding = utf-8
import os
path = "D:\\chunyu"#想要重命名所有文件存放的文件夹
filelist = os.listdir(path) #该文件夹下所有的文件(包括文件夹)
list = []
fileopen = open('D:\chunyu.txt','r')#之后想要重命名成的所有名字的集合,这个名字为除去文件扩展名的文件名
i =0
for file in filelist:
print(file)
for line in fileopen:
line = line.strip('\n')
list.append(line)#读取txt里面的所有名字的集合写入list文件
print(list)
fileopen.close()
for file in filelist: #遍历所有文件
Olddir=os.path.join(path,file) #原来的文件路径
if os.path.isdir(Olddir): #如果是文件夹则跳过
continue
filename=os.path.splitext(file)[0] #文件名
filetype=os.path.splitext(file)[1] #文件扩展名
Newdir=os.path.join(path,str(list[i])+filetype)
os.rename(Olddir,Newdir)#重命名
print(Olddir+" has changed as "+Newdir)
i = i+1
python怎样批量修改文件名
os.rename(a,b)是把a重命名为b(名字带路径)
os.listdir(path)以列表形式获取路径下文件(包括文件夹),os.listdir(“.”)是当前文件夹
然后。。。想怎么重命名就怎么写程序。。。遍历,(检查,)修改。。。
如果待重命名的文件和py程序在一个文件夹会很方便,重命名不需要路径,像os.rename(“1.txt”,“2.txt”)
如果重命名的规则没法表述,那只能自己一个个改了。。。
怎么用python批量修改文件名
基本程序
1
引入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();