一、簡介
pip 是一個安裝和管理 Python 包的工具,python安裝包的工具有easy_install, setuptools, pip,distribute等。distribute是setuptools的替代品,是對标準庫disutils子產品的增強,我們知道disutils主要是用來更加容易的打包和分發包,特别是對其他的包有依賴的包。distribute被建立是因為Setuptools包不再維護了。而pip是easy_install的替代品。
二、安裝pip
<code># apt-get install python-pip</code>
更新:
<code># pip install -U pip</code>
三、pip包管理
安裝包:
<code>root@localhost:~</code><code># pip install django</code>
<code>Collecting django</code>
<code> </code><code>Using cached Django-1.9.5-py2.py3-none-any.whl</code>
<code>Installing collected packages: django</code>
<code>Successfully installed django-1.9.5</code>
指定安裝的軟體包版本:
通過使用==, >=, <=, >, <來指定一個版本号。
<code>root@localhost:~</code><code># pip install markdown==2.0</code>
更新包:
更新包到目前最新的版本,可以使用-U 或者 --upgrade
<code># pip install -U django</code>
搜尋包:
<code># pip search "django"</code>
列出已安裝的包:
<code>root@localhost:~</code><code># pip freeze</code>
<code>Django==1.9.5</code>
<code>Markdown==2.0</code>
解除安裝包:
<code># pip uninstall djang</code>
四、Requirements Format
pip freeze 和pip list兩者都是列出已經安裝的軟體包,有什麼差別呢。help出的解釋如下:
<code>freeze Output installed packages </code><code>in</code> <code>requirements </code><code>format</code><code>.</code>
<code>list List installed packages.</code>
當我們用virtualenv的時候,可以指定一個requirements.txt檔案來解決依賴關系,用法如下:
<code># pip install -r requirements.txt</code>
requirements.txt有一個固定的格式:軟體包名==版本号,每行代表一個軟體包。這樣pip才能了解,如下:
<code>feedparser==5.1.3</code>
<code>wsgiref==0.1.2</code>
<code>django==1.4.2</code>
<code>...</code>
這就是所謂的”requirements format“;我們可以用pip freeze > requirements.txt,導出到檔案裡,然後在另一個地方pip install -r requirements.txt 再導入。
兩者的差別可以了解為:pip list列出了所有的包,pip freeze 隻列出由pip 安裝的軟體包,并輸出成requirements format格式。
本文轉自Jx戰壕 51CTO部落格,原文連結:http://blog.51cto.com/xujpxm/1769424,如需轉載請自行聯系原作者