[英]Python3.9 ModuleNotFoundError: No module named Can't figure out base directory
我正在創建的程序遇到問題,我無法弄清楚為什么會收到此錯誤。 我確信它很簡單,而且我一直在研究它很長時間,我的眼睛需要一個 rest。
我的目錄布局是這樣的:
/home/my_username/My Programs/my_program
my_program
├── __init__.py
├── plugins
├────└── __init__.py
├──────└my_plugins
├─────────└── __init__.py
├─────────└── activate.py
├─────────└── messages.py
這是我在messages.py中的代碼
-----messages.py-----
welcome_msg = "Hello, thanks for trying my program."
這是我在 activate.py 中的代碼
-----激活.py-----
import plugins.my_plugins.messages as m
print(m.welcome_msg)
我正在使用 PyCharm 並且該程序在 PyCharm 中運行良好並且沒有顯示錯誤。
在我運行時在 PyCharm 之外:
python3.9 activate.py
我收到此錯誤ModuleNotFoundError: No module named 'plugins'
如果我將 activate.py 更改為如下所示,它可以在 PyCharm 之外的終端中工作,但在 PyCharm 內部我收到錯誤“沒有名為消息的模塊”但是。 當我在 PyCharm 中運行它時出現錯誤。 它選擇 messages.py 模塊並顯示正確的文本。
-----激活.py-----
import plugins.my_plugins.messages as m
print(m.welcome_msg)
我在自學 Python。 是否有某種片段告訴 Python 基本目錄在哪里。 在這個例子中 my_program 是基目錄? 還是我應該忽略 PyCharm 錯誤? 我從來沒有忽略過 PyCharm 給出的錯誤,所以這將是第一個。
提前感謝您花時間幫助我解決這個問題。
附言。 請原諒我出生時患有嚴重閱讀障礙的任何拼寫或語法錯誤。
我在發布這個問題之前研究了 StackOverFlow,但沒有找到這個 q/a。 今天早上我再次開始研究,並找到了關於如何解決這個問題的詳細答案。
Python 3 中的相對導入
我選擇了解決問題的選項 2。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.