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