Для программистов на Python есть ли что-нибудь эквивалентное CPAN в Perl? - PullRequest
34 голосов
/ 04 января 2009

Я изучаю Python сейчас из-за фреймворка Django. Я был программистом Perl в течение нескольких лет, и я так привык к инструментам Perl. Одна из вещей, по которой я действительно скучаю, - это Perl CPAN и его инструменты. Есть ли что-нибудь эквивалентное в Python? Я хотел бы иметь возможность искать, устанавливать и поддерживать модули Python так же просто, как CPAN. Кроме того, система, которая может обрабатывать зависимости автоматически. Я попытался установить модуль в Python, загрузив zip-файл с веб-сайта, разархивировал его, затем выполните:

sudo python setup.py install

но он ищет другой модуль. Теперь, как я ленив, я не люблю гоняться за зависимостями и тому подобное, есть ли простой способ?

Ответы [ 3 ]

33 голосов
/ 04 января 2009

sammy, взгляните на pip , который позволит вам выполнить "pip install foo", и загрузит и установит его зависимости (если они находятся на PyPI ). Также есть EasyInstall , но pip предназначен для его замены.

10 голосов
/ 05 января 2009

Может быть полезно отметить, что pip и easy_install используют Индекс пакетов Python (PyPI) , иногда называемый "Cheeseshop", для поиска пакетов. Easy_install в настоящее время поддерживается наиболее универсально, так как он полностью работает как с setuptools, так и с упаковкой в ​​стиле distutils. См. комментарий Джеймса Беннетта об упаковке Python для веских причин использовать pip и ответ Иана Бикинга для некоторых разъяснений по различиям.

2 голосов
/ 17 марта 2009

Если вы используете easy_install, я бы предложил установить пакеты, выполнив ..

easy_install -v -Z package_name  |  tee date-package.log

-Z (сокращение от --always-unzip) распаковывает файлы .egg в каталоги, чтобы вы могли затем ..

less *.egg/EGG-INFO/requires.txt  
less *.egg/EGG-INFO/PKG-INFO  
egrep '^(Name|Version|Sum|...)'  *.egg/EGG-INFO/PKG-INFO

По первоначальному вопросу Сэмми есть несколько индексов пакетов, отличных от PyPI:
SciPy и Scipy Docs для научных вычислений
Охло с метриками кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...