我有以下项目结构
main
- exp1
- mod1.py
- exp2
- mod2.py
我可以使用以下
从mod1.py中的mod2.py导入模块abc
from ..exp2.mod2 import abc
有没有其他方法导入这些模块,我不必使用..
?
答案 0 :(得分:1)
您始终可以使用绝对模块名称
导入from main.exp2.mod2 import abc
# or
# from exp2.mod2 import abc
# (?)
对我而言,这是首选方式。
这种方式和你的是唯一可用的选择......
答案 1 :(得分:1)
除非您改变项目结构,否则不确定是否比使用'..'
更简单:
# mod1.py
import sys
sys.path.append('..')
from exp2.mod2 import abc
答案 2 :(得分:0)
您应始终设置PYTHONPATH,然后从该路径导入为main。
在您的情况下,您应该执行以下操作,
export PYTHONPATH=main (Full path of main dir in shell )
from exp2.mod2 import abc
如果你这样做......当你转移代码或在部署期间遇到问题时,这也不是一个正确的方法