如何在 python3 中将 Python 包和子包打包为单个包



我正在尝试创建一个具有以下结构的python包。 当我尝试创建包测试项目时,它已成功创建并成功上传到 https://test.pypi.org/legacy/

testproject/
testproject/
Core/
__init__.py
BaseModel.py
lib/
__init__.py
RunModel.py
__init__.py
RunWorkflow.py
LICENSE
README.md
setup.py   

当我尝试将其下载到我的新环境时,它会将正确的版本下载到我的环境中,当我运行conda list时,我可以看到已安装的软件包具有正确的版本。

实际问题是当我尝试运行help('modules'(命令时,它也返回所有子包[核心和库]。 当我看到其他软件包,如操作系统,numpy,scikit-learn。它没有在帮助('模块'(中显示其子包。

我怎样才能避免这种情况,我在这里做错了什么吗?

请在下面找到我 setup.py。

import setuptools
with open("README.md", "r") as fh:
long_description = fh.read()
setuptools.setup(
name='Test-Project-pypi',
version='0.0.1',
author="Manikandan Jeyabal",
author_email="ManikandanJeyabal029@gmail.com",
description="My longdestription",
long_description=long_description,
long_description_content_type="text/markdown",
packages=setuptools.find_packages(),
classifiers=[
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
install_requires=[
"numpy <=1.17.4", "pandas", "scikit-learn >= 0.21.3, <= 0.22"
],
python_requires='>=3.7'
)

此问题已通过在 Maininit中添加以下代码得到解决.py在"testproject"下

from . import Core
from . import lib

最新更新