2013-03-20 48 views
0

我有這段代碼列出了目錄中的文件,並用我的函數解析了它們中的每一個。嘗試讀取目錄中的文件時沒有這樣的文件或目錄python

paths = [] 
for filename in os.listdir(r"C:\Program Files (x86)\Folder\Folder"): 
    with open(filename) as f:    
     paths.append(parse_file(f)) 

我收到錯誤:

File "find.py", line 21, in <module> 
    with open(filename) as f: 
IOError: [Errno 2] No such file or directory: 'file.txt' 

此錯誤表明,它看到file.txt因爲我在os.listdir指定的文件夾中存在的,我有很多更多的文件存在。如果我刪除file.txt它會在另一個文件上顯示錯誤。

我也嘗試將文件移動到我的桌面上的目錄和腳本工作正常。

什麼問題我不明白。我對Python很新,所以如果它的愚蠢問題可以原諒我。謝謝!

回答

4

os.listdir()返回文件名,而不是路徑。加入他們的目錄名爲絕對路徑:

path = r"C:\Program Files (x86)\Folder\Folder" 
for filename in os.listdir(path): 
    with open(os.path.join(path, filename)) as f:    
+0

非常感謝! – 2013-03-20 21:52:15

相關問題