python 的跨包引用
python的跨包引用方法
假设包的层次结构如下:
package1/
__init__.py
subPack1/
__init__.py
module_11.py
module_12.py
module_13.py
subPack2/
__init__.py
module_21.py
module_22.py
现在假设subPack2 中的module_21需要引用 subPack1中的模块module_11的funcA,则引用语法为:
from subPack1.module_11 import funcA
但是这样引用存在一个缺点:当模块module_21 以if __name__=="__main__" 方式运行时,会产生以下错误:No module named subPack1.module_11
只能在package1目录下以if __name__=="__main__" 方式运行其他脚本相关文章