2009-01-04 44 views
33

由於Django框架,我現在正在學習Python。多年來,我一直是一名Perl程序員,而且我習慣了Perl的工具。我真的很想念的一件事是Perl的CPAN及其工具。 Python中是否有任何等價物?我希望能夠像CPAN一樣簡單地搜索,安裝和維護Python模塊。此外,一個可以自動處理依賴關係的系統。我試圖從網站下載的ZIP文件來安裝Python中的模塊,解壓縮它,然後做:對於Python程序員,是否有任何與Perl的CPAN等價的東西?

sudo python setup.py install

但它尋找另一個模塊。現在,我懶惰,我不喜歡追逐依賴等,有沒有簡單的方法?

回答

33

sammy,看看pip,它會讓你做「pip install foo」,並且會下載並安裝它的依賴項(只要它們在PyPI上)。還有EasyInstall,但pip旨在取代它。

10

注意到pip和easy_install都使用Python Package Index (PyPI)(有時稱爲「Cheeseshop」)來搜索包可能很有用。 Easy_install目前是最普遍支持的,因爲它完全適用於setuptools和distutils風格的包裝。有關使用pip的很好理由,請參見James Bennett's commentary,並請使用Ian Bicking's reply對差異進行一些說明。

+1

現在,幾年之後,請參閱http://stackoverflow.com/a/14753678/260122,以獲得有關Python上打包工具情況的極好概述。 – clacke 2015-03-12 14:27:44

2

如果使用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 

關於Sammy的原始問題,PyPI以外的幾個包索引是:
Scipy 和用於科學計算的
ohloh代碼度量。

相關問題