2015-01-08 71 views
2

我很難讓Python 3.4識別Windows 8系統上的路徑或文本文件。我嘗試了各種不同的方法,但得到類似的錯誤(這可能意味着有關語法的簡單事情)。Python找不到文件

文件本身位於同一文件夾中的腳本文件試圖打開它: C:\用戶\用戶\桌面\ Python的東西\ DATA.TXT

爲了簡單,最簡單的方式訪問該文件(至少,我知道的)是 f=open

這些線被編碼爲:

f = open("Data.txt", "r") 

f = open("C:/Users/User/Desktop/Python stuff/Data.txt", "r") 

,但返回錯誤:

Traceback (most recent call last): 
    File "C:\Users\User\Desktop\Python stuff\Testscript.py", line 3, in <module> 
    f = open("C:/Users/User/Desktop/Python stuff/Data.txt", "r") 
FileNotFoundError: [Errno 2] No such file or directory: 'C:/Users/User/Desktop/Python stuff/Data.txt' 
+0

據我可以看到你的代碼是正確的。空白不應該是一個問題。 – fvannee

+0

您不必在'open'函數中指定''r「'標誌,因爲它是默認的標誌。 – nbro

+0

我幾乎不敢問,但實際上是在那裏的文件? – fejese

回答

1
  • f = open("Data.txt", "r")

確保您的.py和.txt文件在同一目錄下。

  • f = open("C:/Users/User/Desktop/Python stuff/Data.txt", "r")

我認爲Python stuff的空間被搞亂的東西了。

更新:我剛剛試過這個..似乎與空間實際上很好。

>>> [i for i in open('/Users/pk-msrb/projects/temp/temp es/temp.txt')] 
['1\n', '2\n', '3\n', '\n'] 
+0

感謝您的幫助,py文件和txt文件目前位於同一個目錄中。 – user4434674

+0

你可以試一下https://mail.python.org/pipermail/tutor/2008-August/063922.html嗎? – Prashant

+0

謝謝Prashant,問題似乎已經解決了,我不知道爲什麼。我開始按照你所建議的例子工作,最終意外地將f = open行改寫爲write,而不是read,後者在第一個文件旁邊寫了第二個文件。然後,我刪除了新文件,將寫入更改爲讀取,隨後python可以找到該文件。我仍然不確定爲什麼,不管感謝您的幫助! – user4434674

0

使用時要記住的窗戶,如果你將文件命名爲「的data.txt」的文件實際上是「data.txt.txt」,但是Windows會顯示爲「data.txt中「因爲Windows隱藏文件擴展名。

如果您然後搜索「data.txt」,那麼確實沒有這樣的文件。

+1

「窗口隱藏文件擴展名」這不一定是正確的。可以通過轉到**文件資源管理器選項>查看**並取消選中**隱藏已知文件類型**的擴展名來顯示文件擴展名。 – dorukayhan