[英]Errno 2 No such file or directory error while importing a python script from a sub-folder
我有一個 python 腳本(db.py),它有一個類(Chat),它指的是保存在同一文件夾(db)中的 json 文件(cred.json)。 該腳本運行良好,沒有任何錯誤。
當我嘗試在 python 腳本(wa.py)中導入 class 聊天時,該腳本保存在文件夾 db 上方的一個文件夾中,我收到一條錯誤消息,提示“[Errno 2] 沒有這樣的文件或目錄”。
我的文件夾結構如下所示
- wa.py
- db
- db.py
- cred.json
db.py 中的一段代碼,我指的是 json 文件
cred_filename = 'creds.json'
with open(cred_filename, 'r') as c:
data = json.load(c)
wa.py 看起來像這樣
from db.db import Chat
我試圖在谷歌上找到答案,但找不到我的案例的相關解釋。 我知道這里有一些根本性的錯誤,但我無法弄清楚。
提前致謝。
本質上,您正在嘗試打開creds.json
,它與您當前的工作目錄相關(除非在運行時更改,否則您在調用腳本時一直在其中)這不需要,顯然當這種情況發生時不是那個db.py
所在的位置。
只要您在導入/運行db.py
時已經在db/
中,這只能工作和工作。
如果你一直想在creds.json
所在的目錄中獲取db.py
,你可以說:
from pathlib import Path
...
cred_filename = Path(__file__).with_name("creds.json")
這需要導入此模塊的文件的路徑,並將文件名部分替換為"creds.json"
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.