Python 包中的子文件夹在安装时不可见

Subfolder in Python package not visible when installed

给定一个具有以下结构的 Python 包。

pip

安装
pip install --upgrade git+git://github.com/balandongiv/driving_tools.git

安装目录如下

如上图所示,安装文件夹中缺少子文件夹sub_filenickname_override.py

请问需要修改什么才能修正这个issue

根据

进行修改
from setuptools import setup,find_packages

setup(name='ppackage',
    version='0.0.111',
    description='make life easier',
    author='testx',
    packages=['ppackage','ppackage.sub_file'],
)

setup 函数的 packages 参数中,必须明确提及所有模块。模块可以是 python 文件或包含 __init__.py.

的文件夹

它不是递归的。这里有两个模块 ppackageppackage.sub_folder.

参见:https://docs.python.org/3/distutils/setupscript.html#listing-whole-packages

所以你应该:

setup(
    name=...,
    packages=["ppackage", "ppackage.sub_folder"],
    ...
)

如果你想在你的包中嵌入所有模块,你可以使用find_packages

from setuptools import find_packages

setup(
    packages=find_packages(),
    ...
)