如何解决“没有这样的文件或目录”与Python os.rename模块
问题描述:
这里是我的代码:如何解决“没有这样的文件或目录”与Python os.rename模块
file_list = os.listdir("/home/vanessa/prank")
def rename_files():
# current_dir = os.getcwd()
for file_name in file_list:
os.rename(file_name, file_name.translate(None, "0,1,2,3,4,5,6,7,8,9"))
rename_files()
当我跑,我得到
os.rename(file_name, file_name.translate(None, "0,1,2,3,4,5,6,7,8,9")) OSError: [Errno 2] No such file or directory
答
您应该指定文件的完整路径,而不仅仅是相对路径。您可以通过拨打os.getcwd
并将结果加入尾部os.path.join
来完成此操作。
def rename_files():
root = "/home/vanessa/prank"
for file_name in file_list:
os.rename(os.path.join(root, file_name),
os.path.join(root, file_name.translate(None,
"0,1,2,3,4,5,6,7,8,9")))
答
尝试绝对路径,而不是相对路径
file_list = os.listdir("/home/vanessa/prank")
到
file_list = os.listdir("C:/home/vanessa/prank")
OP显然在* Nix上运行,这不会做任何事情。 –
我使用的是Ubuntu linux,是“C”还适用吗? – Vanessa
@Vanessa不,它肯定不会。 –