如何在python3中将python软件包和子软件包打包为单个软件包

时间:2020-02-03 13:15:10

标签: python-3.x setuptools packaging python-packaging

我正在尝试使用以下结构创建一个python包。当我尝试创建包 testproject 时,它创建成功并成功上传到https://test.pypi.org/legacy/

const FindIntersection = (strArr) => {

  const strArrOne = strArr[0].split(',')
  const strArrTwo = strArr[1].split(',')
  const intersection = strArrOne.filter(item => {
    console.log('2',strArrTwo)
    console.log('item --> ', item)
    console.log('includes ---> ', strArrTwo.includes(item))
    return strArrTwo.includes(item)
  }).join(',').replace(/\s/g, '');
  console.log(intersection)
  return intersection;
}
   
console.log(FindIntersection(["1, 2, 4, 5, 6, 9", "2, 3, 4, 8, 10"]));

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

实际的问题是,当我尝试运行 help('modules') 命令时,它也会返回所有子包[Core和lib]。当我看到其他软件包,例如 os numpy scikit-learn 。它没有在 help('modules') 中显示其子软件包。

如何避免这种情况,我在这里做错了什么吗?

请在下面找到我的setup.py。

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

1 个答案:

答案 0 :(得分:0)

通过在“ testproject”下的Main init .py中添加以下代码,此问题得以解决

from . import Core
from . import lib