Python 打包:未安装子目录
Python packaging: subdirectories not installed
我有一个 Python 布局的项目
setup.py
foobar/
__init__.py
foo.py
bar/
__init__.py
foobar/__init__.py
显示
from . import foo
from . import bar
和setup.py
from setuptools import setup
setup(
name='foobar',
version='0.0.1',
packages=['foobar'],
)
从源目录执行 import foobar
时,一切都按预期工作。但是,当通过 pip install .
安装包时,子文件夹 bar/
未 安装,导致导入错误
ImportError: cannot import name bar
有什么提示吗?
显然要包含子包,您需要 find_packages()
:
from setuptools import setup, find_packages
setup(
name='foobar',
version='0.0.1',
packages=find_packages()
)
这也是the setuptools docs中推荐的。
我有一个 Python 布局的项目
setup.py
foobar/
__init__.py
foo.py
bar/
__init__.py
foobar/__init__.py
显示
from . import foo
from . import bar
和setup.py
from setuptools import setup
setup(
name='foobar',
version='0.0.1',
packages=['foobar'],
)
从源目录执行 import foobar
时,一切都按预期工作。但是,当通过 pip install .
安装包时,子文件夹 bar/
未 安装,导致导入错误
ImportError: cannot import name bar
有什么提示吗?
显然要包含子包,您需要 find_packages()
:
from setuptools import setup, find_packages
setup(
name='foobar',
version='0.0.1',
packages=find_packages()
)
这也是the setuptools docs中推荐的。