Pythonのインポートを使用するときに問題が発生しました。完成したモジュールを書きました。それは、それ自体がいくつかのサブモジュールを使用しています(それらはインポートされています)。サブモジュールからサブモジュールをインポートするPython
module:
main_class.py
submodule1.py
....
今、私は別のsupermoduleでこの完成モジュールを使いたいので、フォルダ構造は、しかし、今モジュール内main_class.py
のコードで使用されているすべての輸入は失敗し、この
supermodule:
main_class_super.py -- this class imports module.main_class
module:
main_class.py
submodule1.py
....
のように変更します(インポートは今ではmain_class_super.py
の名前空間で動作するからだと思います)
ソース全体を再構成することなくこの問題を解決するにはどうすればよいですか?
具体的なエラー:私のmain_class.py
で
私はラインを使用します。そのスーパークラスを実行すると
import module.main_class
:私はラインを使用して、私のsupermodule.py
で
import submodule1
を輸入品module.main_class
もちろんimport submodule1
行も実行されますが、名前空間がsupermodule.py
のモジュールが見つからないため、失敗します。
ああ、私はこれが私を助けることができる方法をかなり得ていないと思います。私のフォルダ構造を考えると、supermodule.pyの中でsubmodule1.pyをどのようにインポートするのですか? – WodkaRHR
編集した回答を明示的な解決策を追加する – janbrohl
もう一度迷惑をかけて申し訳ありませんが、別の問題が発生しました。これらのサブモジュールの中で、いくつかのモジュールは同じ他のモジュールをインポートします(例えば、サブモジュール1はサブモジュール2と3をインポートし、サブモジュール2はサブモジュール3もインポートします)。 – WodkaRHR