我看到 Stack Overflow 上有一些类似的问题,但好像没有解决我的问题或者泛用性不够。希望这个问题能够解决我的问题并且避免让我头痛。我有一个 git 仓库,它的形式如下:
repo/
__init__.py
sub1/
__init__.py
sub1a/
__init.py
mod1.py
sub2/
__init__.py
mod2.py
我该如何在mod1.py和mod2.py之间互相导入,这取决于mod1.py或mod2.py是否为脚本(当它们各自导入时而不是被导入)?
PYTHONPATH
,那么您可能需要考虑使用sys.path
修改。例如,使用__file__
加上os.abspath
查找脚本所在的位置,然后获取正确级别的目录作为repo
的父目录,最后将其插入到sys.path
中。 - Amber