小さな python プロジェクトが 2 つのサブディレクトリを持つメイン ディレクトリに分割されている場合:
src/
run.py
subdir1/
__init__.py
module1.py
subdir2/
__init__.py
module2.py
module2 を module1 に含めるには、完全なインクルード パスfrom subdir1.subdir2.module2 import Class2
(実行中の python ファイルに関連するパス) を使用する必要がありますfrom subdir2.module2 import Class2
か? (ステートメントが入っているファイルに相対的)
src/
run.py
subdir1/
__init__.py
module1.py
subdir2/
__init__.py
module2.py
module1にmodule2を含めるのが最善の方法です。プログラムが実行されている場所に対して相対的に試しましたfrom subdir2.module2 import Class2
が、これはエラー"No module named module2"
を与えますとにかくこれが物事を行うための最も移植性の高い方法ではないと考えずにはいられません。特に最初の例では、ステートメントが存在するファイルへの相対パス。
別の Active Directory からコードを呼び出しても、混乱しないと思いますか?python dir/run.py
ありがとう!