首頁 >後端開發 >Python教學 >為什麼 Python 中的 `open()` 會拋出 `FileNotFoundError`,如何修復它?

為什麼 Python 中的 `open()` 會拋出 `FileNotFoundError`,如何修復它?

Patricia Arquette
Patricia Arquette原創
2025-01-04 03:22:39293瀏覽

Why Does `open()` in Python Throw a `FileNotFoundError`, and How Can I Fix It?

解決不存在的檔案的「open() 給出FileNotFoundError / IOError」

嘗試在Python 中使用open() 函數載入檔案時,您可能會遇到“ FileNotFoundError / IOError”錯誤,並顯示訊息“[Errno 2]沒有這樣的檔案或目錄。

要深入研究根本原因,了解Python 如何定位檔案至關重要:

  • 絕對路徑: 從電腦的根目錄開始,例如'C: Pythonscripts'中Windows.
  • 相對路徑:不從根目錄開始,相對於「工作目錄」。

當使用 open('recentlyUpdated. yaml'),Python 假定相對路徑並在目前工作目錄中搜尋。要診斷問題:

  • 驗證檔案是否存在: 使用 os.listdir() 列出目前工作目錄中的檔案並確保具有正確副檔名的檔案存在。
  • 確認目前目錄:使用 os.getcwd() 驗證預期目錄,因為程式碼是從IDE 可能有不同的工作目錄。

解決方案:

  1. 更改目前工作目錄: 使用 os.chdir(dir)導航到包含該檔案的目錄,然後使用以下命令開啟它open("file.txt").
  2. 提供絕對路徑:指定open呼叫中檔案的完整路徑,如open (r'C:Folderfile.txt') .

注意:

  • 使用原始字串 (r"") 表示路徑反斜杠,例如 r'C:Python32'。
  • 正斜線適用於 Windows 'C:/Python32' 且不需要轉義。
  • 範例:假設file.txt在C:資料夾中找到,可以開啟它as:

    • os.chdir(r'C:Folder')
      open('file.txt') # 相對路徑
    • open(r'C:Folderfile. txt') #絕對路徑

以上是為什麼 Python 中的 `open()` 會拋出 `FileNotFoundError`,如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn