【发布时间】:2016-09-24 20:29:29
【问题描述】:
我正在尝试使用此 Python 脚本重命名目录中的多个文件:
import os
path = '/Users/myName/Desktop/directory'
files = os.listdir(path)
i = 1
for file in files:
os.rename(file, str(i)+'.jpg')
i = i+1
当我运行此脚本时,我收到以下错误:
Traceback (most recent call last):
File "rename.py", line 7, in <module>
os.rename(file, str(i)+'.jpg')
OSError: [Errno 2] No such file or directory
这是为什么呢?我该如何解决这个问题?
谢谢。
【问题讨论】:
-
你必须指定整个路径。
-
您的
files列表将包含给定path中的所有文件,但是当您执行os.rename()时,它会在当前工作目录中查找文件。 -
os.listdir()只返回文件名,而不是文件的完整路径。使用os.path.join(path, file)获取完整路径并重命名。