給定能夠與pip一塊兒安裝的Python軟件包的名稱,是否有任何方法能夠找到pip能夠安裝的全部可能版本的列表? 如今是反覆試驗。 node
我正在嘗試爲第三方庫安裝一個版本,可是最新版本太新了,進行了向後不兼容的更改。 因此我想以某種方式列出pip知道的全部版本,以便我能夠對其進行測試。 python
https://pypi.python.org/pypi/Django/-適用於維護者選擇顯示全部軟件包的軟件包https://pypi.python.org/simple/pip/-不管如何都應該作到這一點(列出全部連接) git
更新:
從2017年9月開始,此方法再也不起做用: --no-install
在pip 7中刪除了--no-install
github
使用pip install -v
,您能夠看到全部可用的版本。 web
root@node7:~# pip install web.py -v Downloading/unpacking web.py Using version 0.37 (newest of versions: 0.37, 0.36, 0.35, 0.34, 0.33, 0.33, 0.32, 0.31, 0.22, 0.2) Downloading web.py-0.37.tar.gz (90Kb): 90Kb downloaded Running setup.py egg_info for package web.py running egg_info creating pip-egg-info/web.py.egg-info
要不安裝任何軟件包,請使用如下解決方案之一: json
root@node7:~# pip install --no-deps --no-install flask -v Downloading/unpacking flask Using version 0.10.1 (newest of versions: 0.10.1, 0.10, 0.9, 0.8.1, 0.8, 0.7.2, 0.7.1, 0.7, 0.6.1, 0.6, 0.5.2, 0.5.1, 0.5, 0.4, 0.3.1, 0.3, 0.2, 0.1) Downloading Flask-0.10.1.tar.gz (544Kb): 544Kb downloaded
要麼 flask
root@node7:~# cd $(mktemp -d) root@node7:/tmp/tmp.c6H99cWD0g# pip install flask -d . -v Downloading/unpacking flask Using version 0.10.1 (newest of versions: 0.10.1, 0.10, 0.9, 0.8.1, 0.8, 0.7.2, 0.7.1, 0.7, 0.6.1, 0.6, 0.5.2, 0.5.1, 0.5, 0.4, 0.3.1, 0.3, 0.2, 0.1) Downloading Flask-0.10.1.tar.gz (544Kb): 4.1Kb downloaded
通過pip 1.0測試 bash
root@node7:~# pip --version pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)
您能夠使用yolk3k軟件包而不是yolk。 yolk3k是原始蛋黃的叉子,它同時支持python2和3。 python2.7
https://github.com/myint/yolk ide
pip install yolk3k
對於> = 9.0的點
$ pip install pylibmc== Collecting pylibmc== Could not find a version that satisfies the requirement pylibmc== (from versions: 0.2, 0.3, 0.4, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5, 0.6.1, 0.6, 0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.7, 0.8.1, 0.8.2, 0.8, 0.9.1, 0.9.2, 0.9, 1.0-alpha, 1.0-beta, 1.0, 1.1.1, 1.1, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.3.0) No matching distribution found for pylibmc==
–將打印全部可用版本,而無需實際下載或安裝任何其餘軟件包。
對於pip <9.0使用
pip install pylibmc==blork
其中blork
能夠是不是有效版本號的任何字符串。
您不須要第三方軟件包便可獲取此信息。 pypi爲如下全部包提供了簡單的JSON feed
https://pypi.python.org/pypi/{PKG_NAME}/json
如下是一些僅使用獲取全部版本的標準庫的Python代碼。
import json import urllib2 from distutils.version import StrictVersion def versions(package_name): url = "https://pypi.python.org/pypi/%s/json" % (package_name,) data = json.load(urllib2.urlopen(urllib2.Request(url))) versions = data["releases"].keys() versions.sort(key=StrictVersion) return versions print "\n".join(versions("scikit-image"))
該代碼打印出來(截至2015年2月23日):
0.7.2 0.8.0 0.8.1 0.8.2 0.9.0 0.9.1 0.9.2 0.9.3 0.10.0 0.10.1