このようなフォルダがあります
/test_mod
__init__.py
A.py
test1.py
/sub_mod
__init__.py
B.py
test2.py
そして、このように親戚のインポートを使用test1
したいtest2
#test1.py
from . import A
from .sub_mod import B
...
#test2.py
from .. import A
from . import B
...
開発中test1
、またはtest2
IDLE にいる間にこれらのインポートが機能するようにしたい場合、つまり、そのF5
中で作業中に押すと、たとえばtest2
やりたくないので、すべて正常に機能python -m test_mod.sub_mod.test2
します。
私はすでにこのpython-relative-imports-for-the-billionth-timeをチェックして います
それを見て、私はこれを試しました:
if __name__ == "__main__" and not __package__:
__package__ = "test_mod.sub_mod"
from .. import A
from . import B
しかし、それは機能しませんでした。次のエラーが発生しました。
SystemError: Parent module 'test_mod.sub_mod' not loaded, cannot perform relative import