作者rofellosx (鏖)
看板Python
標題[問題]import 出現 ModuleNotFoundError
時間Wed Jan 23 15:18:40 2019
python3 vscode
main.py 內容
from bb import c
if __name__ == '__main__':
t=c.c_class()
建立bb資料夾
\bb\c.py 內容
import e
class c_class():
def __init__(self):
a=e.e_class()
\bb\e.py 內容
class e_class():
def __init__(self):
pass
執行main時跳出c.py中的import e跳出錯誤
發生例外狀況: ModuleNotFoundError
No module named 'e'
有時候想做的工具class,讓其他檔案都能import使用,然後就發生這狀況
雖然修改import e為bb.e就沒問題,但這樣反而獨立測試c.py反而發生
ModuleNotFoundError
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.219.246.61
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1548227927.A.B14.html
推 germun: 如果module有必要獨立測試, 我會連import都用if main判斷 01/23 16:27
→ germun: 或者懶人做法就是把你的bb加入sys path 01/23 16:30
→ germun: 不獨立測試的話, c.py內的相對import應該改`import .e` 01/23 16:32
→ germun: 獨立測試會錯是因為你的工作目錄變了, 所以相對位置找不到 01/23 16:34