推文內容以下: html
不要使用easy_install,除非你喜歡刺傷本身的臉。 使用點子。 python
爲何要使用pip而不是easy_install? 問題不在於PyPI和包裝做者嗎? 若是做者將垃圾源tarball(例如:丟失文件,沒有setup.py)上傳到PyPI,那麼pip和easy_install都將失敗。 除了化妝品差別,爲何Python人(如上面的推文)彷佛強烈支持pip而不是easy_install? git
(咱們假設咱們正在討論來自Distribute包的easy_install,這是由社區維護的) ide
做爲fuzzyman的回覆的補充: 工具
pip不會安裝二進制包,而且在Windows上沒有通過良好測試。 測試
因爲Windows默認狀況下沒有編譯器,所以pip一般不能在那裏使用。 easy_install能夠爲Windows安裝二進制包。 spa
這是Windows上的一個技巧: code
您可使用easy_install <package>
來安裝二進制包以免構建二進制文件 htm
即便您使用easy_install,也可使用pip uninstall <package>
。 ip
這只是一個適用於Windows的解決方法。 實際上,若是不涉及二進制文件,我老是使用pip。
查看當前的pip doku: http ://www.pip-installer.org/en/latest/other-tools.html#pip-compared-to-easy-install
我會在郵件列表上詢問計劃的內容。
這是最新的更新:
安裝二進制文件的新支持方式將是wheel
! 它尚未達到標準,但差很少。 當前版本仍然是alpha:1.0.0a1
https://pypi.python.org/pypi/wheel
http://wheel.readthedocs.org/en/latest/
我將經過使用wheel
而不是egg爲PySide
建立OS X安裝程序來測試wheel
。 將回來並報告此事。
歡呼 - 克里斯
過渡到wheel
幾乎結束了。 大多數包都是支撐wheel
。
我答應爲PySide
製造輪子,去年夏天我就這樣作了。 效果很好!
提示:到目前爲止,一些開發人員未能支持輪式,只是由於他們忘記用setuptools
替換distutils
。 一般,經過在setup.py
替換此單個單詞,能夠輕鬆轉換此類包。
更新:正如一些人所想的那樣, setuptools
吸取了distribute
,而不是相反。 setuptools
是最新的distutils
更改和輪式格式。 所以, easy_install
和pip
如今或多或少處於平等地位。
資料來源: http : //pythonhosted.org/setuptools/merge-faq.html#why-setuptools-and-not-distribute-or-another-name
剛剛遇到一個我必須使用easy_install
而不是pip
特殊狀況,或者我必須直接提取源代碼。
對於包GitPython
, pip
的版本太舊,爲0.1.7
,而easy_install
是最新的0.3.2.rc1
。
我正在使用Python 2.7.8
。 我不肯定easy_install
和pip
的底層機制,但至少某些軟件包的版本可能彼此不一樣,有時easy_install
是新版本的版本。
easy_install GitPython
這裏的許多答案都是2015年的過期(儘管丹尼爾羅斯曼最初接受的答案不是)。 這是現狀:
.whl
文件)分發 - 不僅是在PyPI上,而是在第三方存儲庫中,如Christoph Gohlke的Windows擴展包 。 pip
能夠處理輪子; easy_install
不能。 virtualenv
添加到2.6 + / 3.1 +)已經成爲一個很是重要和突出的工具(並在官方文檔中推薦); 它們包括開箱即用的pip
,可是甚至沒法使用easy_install
正常工做。 easy_install
的distribute
包。 它對setuptools
改進已合併回setuptools
。 嘗試安裝distribute
只會安裝setuptools
。 easy_install
自己只是準維護。 pip
曾經不如easy_install
從解壓縮的源代碼樹,DVCS倉庫等安裝 - 的狀況都好久了; 你能夠pip install .
, pip install git+https://
。 pip
附帶了python.org的官方Python 2.7和3.4+軟件包,若是你從source構建,默認包含一個pip
引導程序。 pip
稱爲「首選安裝程序」。 pip
多年來永遠不會在easy_install
。 例如, pip
能夠經過構建需求文件而後在每一側使用單個命令安裝它來輕鬆克隆您的站點包。 或者將您的需求文件轉換爲本地倉庫以用於內部開發。 等等。 我知道在2015年使用easy_install
的惟一緣由是使用Apple預裝的Python版本與OS X 10.5-10.8的特殊狀況。 自10.5以來,Apple已經包含了easy_install
,但截至10.10,他們仍然不包括pip
。 使用10.9+,你應該只使用get-pip.py
,但對於10.5-10.8,這有一些問題,因此sudo easy_install pip
更容易。 (通常來講, easy_install pip
是一個壞主意;它只適用於OS X 10.5-10.8,你想要這樣作。)另外,10.5-10.8包含readline
,方式easy_install
知道如何克服但pip
沒有,因此若是你想升級它,你也想要sudo easy_install readline
。
有兩個緣由,可能會有更多:
pip提供了一個uninstall
命令
若是安裝在中間失敗,則pip將使您處於乾淨狀態。