【发布时间】:2012-10-30 20:29:57
【问题描述】:
我是python 的新手,下面的代码让我发疯。它列出了目录中的文件,并为每个文件做一些事情。我收到了IOError: [Errno2] No such file or directory: my_file_that_is_actually_there!
def loadFile(aFile):
f_gz = gzip.open(aFile, 'rb')
data = f_gz.read()
#do some stuff...
f_gz.close()
return data
def main():
inputFolder = '../myFolder/'
for aFile in os.listdir(inputFolder):
data = loadFile(aFile)
#do some more stuff
文件存在且未损坏。我不明白 python 如何在检查myFolder 的内容时首先找到该文件,然后再找不到它......这发生在我的 for 循环的第二次迭代中,只有任何文件。
注意:为什么这个异常只发生在循环的第二次迭代?找到并打开文件夹中的第一个文件,没有任何问题...
【问题讨论】:
-
Martijn,请检查我的编辑(我添加了注释)。您评论中链接的问题未解决此详细信息。
-
只有当本地目录恰好具有与
../myFolder/中相同的文件名时,才会发生这种情况。您打开了错误的文件。所以如果有一个../myFolder/foo,那么也有一个./foo。
标签: python ioexception filenotfoundexception