我在從cmdline/console運行python時僅導入python包時遇到問題。但是,使用pydev時,一切似乎都正常。無法導入Python包
我有以下的文件系統......
---MarketData
---Parser
---Parser.py
---__init__.py
---IO
---__init__.py
---MarketSocket.py
目前,解析器和IO被定義爲Python包(他們有初始化 .py文件,雖然在解析器沒有任何代碼。INIT .py文件。
我試圖運行下面的代碼行MarketSocket.py
from Parser import Parser
但是,應該在包「Parser」中導入模塊「解析器」,但出現以下錯誤。
ImportError: No Module Named Parser
任何幫助,將不勝感激!這應該根據stackoverflow的類似問題,但出於一些奇怪的原因,它不是。
這是一個可怕的解決方案。當使用適當的結構時修改路徑是一個不好的解決方案。 –
當然,只要Python不會改變它們有關包的默認行爲,我認爲sys.path幾乎是你的唯一選擇,如果你想使用像'#!/ usr/bin/env python'這樣的東西, 。個人而言,'python -m'不是我的選擇。 –
出於興趣,爲什麼'python -m'不是一個選項?我建議創建一個頂級模塊,以便在這種情況下導入更好的解決方案。 –