私はpython3、venv、およびc9.io PAASを使用してWebアプリを作成しています。私のコードの構造は次のとおりです。
batch_runner.py
logic/
__init__.py
parsers/
__init__.py
time_parser.py
abstract_parser.py
ここでは をbatch_runner
インポートabstract_parser
し、次に time_parser からインポートします。すべてがインストールされ、venv がアクティブ化された状態で実行されます。
具体的には、次のものbatch_runner.py
が含まれます。
from logic.parsers import abstract
from sys import argv
url = argv[1]
a = abstract(url)
logic/__init__.py
空です。logic/parsers/__init__.py
内容:
from abstract_parser import abstract
from time_parser import _timeInfo
に行って直接logic
実行すると、すべてが期待どおりに機能します。python abstract_parser.py
ただし、1レベル上に移動して実行するとpython batch_runner.py
、インポートできますが、から呼び出されたものをabstract_parser
見つけることができず、スローされますtime_parser
abstract_parser
ImportError: No module named 'abstract'