Linux环境下python替换文件夹内所有文件名中特定字符
比如某文件夹下文件名:abcd_efg1214.txtabcmpd_efg1214_efeg1214_1.txtabcmpd_efg1214_efeg1214_2.txt...
比如某文件夹下文件名:
abcd_efg1214.txt
abcmpd_efg1214_efeg1214_1.txt
abcmpd_efg1214_efeg1214_2.txt
......
希望的结果是:
abcd_efg1888.txt
abcmpd_efg1888_efeg1888_1.txt
abcmpd_efg1888_efeg1888_2.txt
......
编程小菜,刚接触,希望给出的编程容易理解,最好给出解释,谢谢 展开
abcd_efg1214.txt
abcmpd_efg1214_efeg1214_1.txt
abcmpd_efg1214_efeg1214_2.txt
......
希望的结果是:
abcd_efg1888.txt
abcmpd_efg1888_efeg1888_1.txt
abcmpd_efg1888_efeg1888_2.txt
......
编程小菜,刚接触,希望给出的编程容易理解,最好给出解释,谢谢 展开
展开全部
import glob
import os
def test(fdir,orgs,dsts):
r=glob.glob(fdir+'*%s*.txt'%orgs) #获取含1214的txt
print [x for x in r] #打印
print [x.replace(orgs,dsts) for x in r] #打印替换后的文件名称
for x in r:
os.rename(x,x.replace(orgs,dsts)) #文件重命名
test('C:/Users/Wei/Desktop/test/','1214','1888')
更多追问追答
追问
谢谢你的帮助!
怎么样修改能变成,提示用户自己输入要操作的文件夹,以及要修改的字符,及修改后的字符?
追答
import glob
import os
def test(fdir,orgs,dsts):
r=glob.glob(fdir+'*%s*.txt'%orgs) #获取含1214的txt
print [x for x in r] #打印
print [x.replace(orgs,dsts) for x in r] #打印替换后的文件名称
for x in r:
os.rename(x,x.replace(orgs,dsts)) #文件重命名
#test('C:/Users/Wei/Desktop/test/','1888','1314')
fdir=raw_input('请输入要修改的文件夹地址(以/结尾):')
orgs=raw_input('请输入要修改的字符:')
dsts=raw_input('请输入修改后的字符:')
test(fdir,orgs,dsts)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |