PIP为什么在pip冻结时引发断言错误?

我的控制台:

desarrollador @ desarrollador-HP-14-Notebook-PC1:〜$ pip freeze
例外:
回溯(最近一次通话最后):
文件“/usr/lib/python2.7/dist-packages/pip/basecommand.py”,行126
self.run(选项,参数)
在运行文件“/usr/lib/python2.7/dist-packages/pip/commands/freeze.py”,第68行
req = pip.FrozenRequirement.from_dist(dist,dependency_links,find_tags = find_tags)
文件“/usr/lib/python2.7/dist-packages/pip/init.py”,行156,from_dist
assert len(specs)== 1 and specs [0] [0] =='=='
Asse田

我安装了龙卷风包,这发生了。 我该如何解决?

这工作对我来说(运行Ubuntu,12和14 LTS):

 pip install -U setuptools pip install -U pip 

升级到最新版本的setuptools,以便能够升级到最新版本的pip,并升级到最新版本的pip,以获得修复了AssertException错误的版本。

原因:Ubuntu 12.04中的python-pip包严重过时,并且在某些软件包名称上有一些错误(正如我所见),无法正确parsing它们。

解决scheme:通过easy_install安装更新版本的pip。

你的点可能已经过时了。 即使在Ubuntu 14.04 LTS中,使用apt-get install python-pip安装的pip版本也是1.5.4。 尝试手动更新pip,也可能再次使用新的软件包。

 pip --version # 1.5.4 curl -O https://bootstrap.pypa.io/get-pip.py sudo python get-pip.py pip --version # 6.0.8 hash -r # reset bash cache 

https://pip.pypa.io/en/latest/installing.html

我在这个链接find解决scheme。

pip install setuptools==7.0

问题是由于安装了旧版本的pip 。 运行以下命令以安装新版本的pip

 sudo easy_install -U pip. 

首先,我运行Martin Mohan的解决scheme:

 /usr/local/bin/pip uninstall pip apt-get remove python-pip apt-get install python-pip 

然后,boredcoding最终解决了这个问题,两个解决scheme都发现在线程底部: 我在Ubuntu 12.10上搞砸了Python Pip的系统版本

 $apt-get install python-pip $which pip /usr/bin/pip $pip install -U pip $which pip /usr/bin/pip $hash -r $which pip /usr/local/bin/pip 

这两个修正背后的逻辑是在线程(上面链接)中说明,所以我不会在这里进入每个。

可能有点晚,但是我发现有一点是安装了2到3个pip版本(取决于你安装的)

pip – 安装的操作系统版本,冻结不起作用,它可能是过时的pip2 – 较新的一个安装,但通过点等升级点pip3 – 安装,如果你有python3和python2同时安装。

你可以改变在$ PATH中使用哪个点,或者做我做的:

pip2冻结 (如果你有多个python选项,它可以在ubuntu14上运行)

Interesting Posts