我正在尝试在Python 2.7中创建一个包含多个嵌套目录的测试包,但它无法正常工作。我的目录结构是
testpack\
setup.py
testpack\
__init__.py
vspecial\
__init__.py
functions.py
setup.py
包含:
from setuptools import setup
setup(name='testpack', packages=['testpack'])
外部__init__.py
文件只是import vspecial
。内部__init__.py
文件只是import functions
当我python setup.py install
时,我没有错误,但是当我进入python并执行import testpack
时,我得到:
"...Anaconda2\lib\site-packages\testpack-0.0.0-py2.7egg\testpack\__init__.py", line 1, in <module>
ImportError: No module named vspecial
我在Windows上使用Anaconda2。有人能告诉我我做错了吗?
答案 0 :(得分:1)
事实证明,在我的__init__.py
文件中,我应该编写相对导入:from . import vspecial
。
在setup.py
我应该写packages=find_packages()