我正在尝试向PyPI发布一个包,但遇到了导入问题。
我的包装设置如下:
mypackage/
setup.py
mypackage/
__init__.py
mypackage.py
在mypackage.py
,我有一个班级:MyPackageWrapper
且__init__.py
为空。
在开发过程中,我这样做:
from mypackage import MyPackageWrapper
这很有用。但是,我将我的初始版本发布到PyPI,上面的内容不再适用。它出错ImportError: cannot import name MyPackageWrapper
我必须有这样的导入:
from mypackage.mypackage import MyPackageWrapper
或
import mypackage
mypackage.mypackage.MyPackageWrapper()
如何摆脱上述两个中的前导mypackage
,以便我可以使用:
from mypackage import MyPackageWrapper # As done in development, or
import mypackage
mypackage.MyPackageWrapper()
答案 0 :(得分:2)
您的__init__.py
文件应包含:
from mypackage.mypackage import MyPackageWrapper