为什么要用一个鸡蛋而不是sdist?

时间:2010-11-13 01:42:06

标签: python packaging egg sdist

关于我能想到将python包作为egg分发的唯一原因是你不能将.py文件包含在你的包中(并且只包含.pyc文件,这是保护你的代码的一种可疑方式)无论如何)。除此之外,我真的没有想到任何理由将包作为鸡蛋而不是sdist上传。事实上,pip甚至不支持鸡蛋。

有没有真正的理由使用鸡蛋而不是sdist?

1 个答案:

答案 0 :(得分:3)

一个原因:egg可以包含已编译的C扩展模块,这样最终用户就不需要拥有必要的构建工具和可能的额外头文件和库来从头开始构建扩展模块。缺点是打包器可能需要提供多个鸡蛋以匹配每个目标平台和Python配置。如果有许多支持的配置,这可能被证明是一项艰巨的任务,但它可以对更均匀的环境有效。