Python:相对导入意味着你不能自己执行子包吗?

Ram*_*hum 7 python import python-3.x

我最近移植了我的Python项目以在Python 3.1上运行.为此我必须在我的项目的子模块和子包中采用相对导入的策略.我不这样做,现在项目本身有效,但我注意到我无法执行其中的任何子包或子模块.如果我尝试,我得到"builtins.ValueError:在非包中尝试相对导入".我只能导入整个项目.

这是正常的吗?

Ben*_*son 3

您可以使用 python 解释器的 -m 标志来运行子包(甚至 3.1 中的包)中的模块。