setup.py:入口点和cmdclass有什么区别?

时间:2019-05-10 13:47:52

标签: python setuptools setup.py distutils

在学习setup.py的结构时,我遇到了两个术语:entry_pointscmdclass

我阅读了setuptoolsdistutils的文档。有了这些,再加上我在网上找到的一些信息,我得出的结论是,这两个是相同的。具体来说:

这两个用于添加自定义命令,或者可以用于向现有命令添加钩子。

但是,当我检查一些流行软件包的setup.py文件时,我发现这两个属性正在一起使用。例如参见numpy软件包中的setup.py

能否请您解释一下这两个属性的用法?谢谢你。

1 个答案:

答案 0 :(得分:2)

cmdclass是一种修改setup.py的行为的方法。例如,您可以覆盖buildinstall命令来扩展它们。

entry_pointsscripts类似,它们声明将在安装时创建的脚本。这些脚本旨在由用户运行。