Недавно я начал изучать Python, и я немного смущен тем, как пакеты распространяются и устанавливаются.
Я понимаю, что официальный способ установки пакетов distutils: вы загружаете исходный архив, распаковываете его и запускаете: python setup.py install
, затем модуль автоматически устанавливает себя
Я также знаю о setuptools, который поставляется с easy_install
помощником script. Он использует яйца для распространения, и, насколько я понимаю, построен поверх distutils и делает то же самое, что и выше, плюс он заботится о любых зависимых зависимостях, все из которых получены из PyPi
Тогда есть также pip, который я до сих пор не уверен, как он отличается от других.
Наконец, поскольку я нахожусь на машине с Windows, многие пакеты также предлагают двоичные сборки через установщик Windows, особенно те, которые требуют компиляции кода C/Fortran, что в противном случае было бы кошмаром вручную скомпилировать на окнах (предполагается, что у вас есть среда MSVC или MinGW/Cygwin dev со всеми необходимыми настройками библиотек.. тем не менее, пытайтесь создать numpy или scipy самостоятельно, и вы поймете!)
Так может кто-то помочь мне разобраться во всем этом и объяснить различия, плюсы и минусы каждого метода. Я хотел бы знать, как каждый отслеживает пакеты (реестр Windows, файлы конфигурации,..). В частности, как вы будете управлять всеми вашими сторонними библиотеками (иметь возможность отображать установленные пакеты, отключать/удалять и т.д.).