Python 重命名文件夹中的重复文件
我正在重命名我的许多通话文件。这些文件保存为: 020171707p+917348809123.m4a 02016p+917348809123.m4a 020171707p+918658644125.m4a 020171707p+913676876817.m4a 我使用正则表达式只显示+号后面的数字。 但是我得到一个错误,因为两个文件不能有相同的名称。如何修改代码以使两个新文件(名称略有不同)保留在同一文件夹中 这是我的密码:Python 重命名文件夹中的重复文件,python,file-rename,Python,File Rename,我正在重命名我的许多通话文件。这些文件保存为: 020171707p+917348809123.m4a 02016p+917348809123.m4a 020171707p+918658644125.m4a 020171707p+913676876817.m4a 我使用正则表达式只显示+号后面的数字。 但是我得到一个错误,因为两个文件不能有相同的名称。如何修改代码以使两个新文件(名称略有不同)保留在同一文件夹中 这是我的密码: import re import os path="D:\\docu
import re
import os
path="D:\\docu\s\mjay\docu\\acr"
DIR=os.chdir(path)
newstr=".m4a"
for filename in os.listdir(path):
match=re.search("p\+(\d+)",filename)
if match==None:
continue
newfilename=match.group(1)+newstr
os.rename(filename,newfilename)
这里有一个简单的解决方法
import os
count = 1
path = "D:\\docu\s\mjay\docu\\acr\\"
for filename in os.listdir(path):
try:
f_name = filename.split("+")[1]
f_name = f_name.split(".")[0]+"."+f_name.split(".")[1]
os.rename(path+filename,path+f_name)
count +=1
except:
f_name = filename.split("+")[1]
f_name = f_name.split(".")[0]+str(count)+"."+f_name.split(".")[1]
os.rename(path+filename,path+f_name)
count+=1
将有效的整数后缀附加到找到的任何重复项。