昨晚,我的Mac上工作時,我設置了一些模塊導入我__init__.py
的Python模塊導入 - 明確VS隱相對導入
from MongoProvider import MongoProvider
from Settings import Settings
等我不能確定是哪個版本的Python的在那臺機器上。一旦我擁有它,我將在稍後用該信息編輯問題。
今天,在另一臺機器上工作,這是Windows和使用Python 3.3.3,我的模塊進口已經打破。通過添加一個明確的相對導入(添加一個前導點),我能夠解決這個問題。
from .MongoProvider import MongoProvider
from .Settings import Settings
我收到的軌跡是:
Traceback (most recent call last):
File "app.py", line 5, in <module> from modules.route_handlers import Route_Handlers
File "C:\Users\willb\bearded-dubstep\modules\route_handlers\Route_Handlers.py", line 9, in <module> from modules.backend_providers import Settings
File "C:\Users\willb\bearded-dubstep\modules\backend_providers\__init__.py", line 1, in <module> from MongoProvider import MongoProvider
ImportError: No module named 'MongoProvider'
我的項目佈局是
根
| _modules
| _api_helpers
| __init__.py
| InvalidUsage.py
| response_utils.py
| _backend_providers
| __init__.py
| MongoProvider.py
| Settings.py
| _route_handlers
| __init__.py
| Route_Handlers
| app.py
任何想法會導致這種情況?有沒有我應該看的配置文件?
什麼Python版本是什麼? –
Windows正在使用3.3.3。我不確定我的Mac上有什麼。無論現在運送什麼貨物。 – William
你能提供更多信息嗎?像Windows中的例外情況一樣?你是項目的文件格式,等等? –