Python 3.5.1:更改文件名

Python 3.5.1:更改文件名,python,python-3.5,Python,Python 3.5,上面的代码应该通过删除文件名中的所有数字来重命名位于特定文件夹中的每个文件,但没有任何更改。有人能帮忙吗?谢谢 从文件名中删除所有数字 如果要删除所有数字,为什么需要断言:(?!\d*$) 当您可以简单地执行以下操作时: import os import re def rename_files(): #get file names from a folder file_list = os.listdir("/Users/myname/Desktop/Python") #print (file_

上面的代码应该通过删除文件名中的所有数字来重命名位于特定文件夹中的每个文件,但没有任何更改。有人能帮忙吗?谢谢

从文件名中删除所有数字

如果要删除所有数字,为什么需要断言:
(?!\d*$)

当您可以简单地执行以下操作时:

import os
import re
def rename_files():
#get file names from a folder

file_list = os.listdir("/Users/myname/Desktop/Python")
#print (file_list)

saved_path = os.getcwd()
print(saved_path)
os.chdir("/Users/myname/Desktop/Python")

#rename each file 
for file_name in file_list:
    os.rename(file-name, re.sub("[0-9]", "", file_name))
os.chdir(saved_path)

rename_files()
你做错了:

os.rename(file_name, re.sub("[0-9]", "", file_name))
从文件名中删除所有数字

如果要删除所有数字,为什么需要断言:
(?!\d*$)

当您可以简单地执行以下操作时:

import os
import re
def rename_files():
#get file names from a folder

file_list = os.listdir("/Users/myname/Desktop/Python")
#print (file_list)

saved_path = os.getcwd()
print(saved_path)
os.chdir("/Users/myname/Desktop/Python")

#rename each file 
for file_name in file_list:
    os.rename(file-name, re.sub("[0-9]", "", file_name))
os.chdir(saved_path)

rename_files()
你做错了:

os.rename(file_name, re.sub("[0-9]", "", file_name))

为什么不想在文件名的末尾匹配数字?是否检查了re.sub(“[0-9](?!\d*$)”,“,”文件名)的结果?文件名从何而来?打字错误?@Natecat,因为每个文件名都以数字开头。。任何文件名的中间或结尾都没有数字..@MosesKoledoye是的。刚刚编辑过,但仍然不起作用。。谢谢:)你为什么不想在文件名的末尾匹配数字?你检查过re.sub(“[0-9](?!\d*$)”,“,文件名”的结果了吗?
文件名从哪里来?打字错误?@Natecat,因为每个文件名都以数字开头。。任何文件名的中间或结尾都没有数字..@MosesKoledoye是的。刚刚编辑过,但仍然不起作用。。谢谢:)你说得对,我不需要它。。已更新代码,但仍然。。谢谢你注意到你的
os.chdir(“/Users/mynaame/Desktop/Python”)
名称中有一个双
a
?你说得对,我不需要它。。已更新代码,但仍然。。谢谢你注意到你的
os.chdir(“/Users/mynaame/Desktop/Python”)
名称中有一个双
a