我最近开始学习 Python,对包的分发和安装方式有些困惑。
我知道安装包的官方方法是distutils:你下载源代码压缩包,解压它,然后运行:python setup.py install
,然后模块会自动安装自己
我也知道辅助脚本附带的setuptools 。easy_install
它使用鸡蛋进行分发,据我了解,它建立在 distutils 之上并执行与上述相同的操作,此外它还处理所需的任何依赖项,所有这些都从 PyPi 获取
然后还有pip,我仍然不确定它与其他有什么不同。
最后,由于我在 windows 机器上,很多软件包还通过windows 安装程序提供二进制构建,尤其是那些需要编译 C/Fortran 代码的软件包,否则在 windows 上手动编译将是一场噩梦(假设你有 MSVC或具有所有必要库设置的 MinGW/Cygwin 开发环境..尽管如此尝试自己构建 numpy 或 scipy,你会明白的!)
所以有人可以帮我理解这一切,并解释每种方法的区别和优缺点。我想知道每个人如何跟踪包(Windows 注册表、配置文件、..)。特别是,您将如何管理所有第三方库(能够列出已安装的软件包、禁用/卸载等)