我正在尝试重命名目录中的所有图片。我需要在文件名中添加几个预先挂起的零。我是Python的新手,我编写了以下脚本。
import os
path = "c:\\tmp"
dirList = os.listdir(path)
for fname in dirList:
fileName = os.path.splitext(fname)[0]
fileName = "00" + fname
os.rename(fname, fileName)
#print(fileName)
评论打印线只是为了验证我是在正确的轨道上。当我运行这个时,我得到以下错误,我不知道如何解决它。
Traceback(最近一次调用最后一次):文件 “C:\ Python32 \ Code \ add_zeros_to_std_imgs.py”,第15行,in os.rename(fname,fileName)WindowsError:[错误2]系统找不到指定的文件
非常感谢任何帮助。日Thnx。
答案 0 :(得分:16)
您应该将绝对路径传递给os.rename
。现在你只传递文件名本身。它没有找到正确的地方。使用os.path.join
。
试试这个:
import os
path = "c:\\tmp"
dirList = os.listdir(path)
for fname in dirList:
fileName = os.path.splitext(fname)[0]
fileName = "00" + fname
os.rename(os.path.join(path, fname), os.path.join(path, fileName))
#print(fileName)