【发布时间】:2016-06-28 19:18:55
【问题描述】:
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()
上面的代码应该通过从文件名中删除所有 NUMBERS 来重命名位于特定文件夹中的每个文件,但没有任何改变。任何人都可以帮忙吗?谢谢。
【问题讨论】:
-
为什么不想匹配文件名末尾的数字?
-
你检查 re.sub("[0-9](?!\d*$)", "", file_name) 的结果了吗?
-
file-name来自哪里?错字? -
@Natecat 因为每个文件名都以数字开头.. 任何文件名的中间或末尾都没有数字..
-
@MosesKoledoye 是的。刚刚编辑它,但仍然无法正常工作.. 谢谢 :)
标签: python python-3.5