私はPythonが初めてで、モジュール階層を作成しようとしています:
projectDir:
__init__.py
directory1:
__init__.py
file1.py
file2.py
directory2:
__init__.py
file1.py
file2.py
directory3:
__init__.py
file1.py
file2.py
directory2 の file1.py にいる場合など、directory1 file1.py にあるクラスをインポートできるようにしたいと考えています。sys.path を変更したり、imp を使用してソース コードをインポートしたりせずに、これを実行したいと考えています。
すべてのディレクトリにファイルを作成__init__.py
し、相対インポートを使用してディレクトリ 1 からモジュールをインポートしました。しかし、次に、 directory2 でスクリプトを直接実行する必要がありますが、ここで説明する理由で失敗します:
相対インポート
効率的なコードでこのエラーを回避するにはどうすればよいですか?