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