尝试用相对导入的方式在一个包的下级模块中导入另一个同级包的下下级目录,导入失败。但用绝对路径导入是ok的。不是很明白为什,求解。
来源:7-15 相对导入和绝对导入 二
leon_t
2018-01-07
写回答
2回答
-
慕斯卡8323326
2018-02-13
我觉得:
是可以通过改变入口文件位置来搞定,但是那也改变了顶级包位置(变相的把不同的顶级包的文件部署在一个顶级包的子包下了),那么不同顶级包(不改变main.py情况下),比如package2和package3内部的文件相互不能用相对导入。
导入就会会报
attempted relative import beyond top-level package
这个错误!
所以相对导入还是用在同一顶级包内部才对!
00 -
7七月
2018-01-08
这个和你的运行文件位置又关系,建议把这几个小节看完。
00
相似问题