我已经编写了一个我希望为其他人提供的Python模块。现在,它是一个嵌套在子文件夹中的大型模块:
我认为最好将这些子文件夹拆分为单独的包。 The tipfy project does this。但是, ext 和 color 模块依赖于 util 。
组织和发布这些模块的最佳方法是什么?我是否将它们拆分并命名为 wraith.util , wraith.ext ,和 wraith.color 一样吗?当人们安装 ext 或 color 时,我是否要包含 util ?
答案 0 :(得分:1)
如果wraith.ext等本身无用,则无需拆分。你能想象有人会在不安装wraith.color的情况下使用wrait.util吗?
如果你决定拆分,你需要在setup.py中设置 install_requires ,它告诉setuptools等包依赖关系。您还需要设置 namespace_packages ,告知 wrait 命名空间也会收到其他包。
更多信息