'pip3 --version'失败,出现SyntaxError

杰森·斯珀斯凯

这一切都开始了,当我开始安装请求库为Python 3(我在OSX小牛运行与Python 2.7.5(由安装brew install python)和3.4.2(由安装brew install python3)。当我运行pip3 --version(或任何有关pip3命令),我看到以下内容:

$ pip3 --version
Traceback (most recent call last):
  File "/usr/local/bin/pip3", line 7, in <module>
    from pip import main
  File "/usr/local/lib/python3.4/site-packages/pip/__init__.py", line 11, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "/usr/local/lib/python3.4/site-packages/pip/vcs/mercurial.py", line 9, in <module>
    from pip.download import path_to_url
  File "/usr/local/lib/python3.4/site-packages/pip/download.py", line 22, in <module>
    from pip._vendor import requests, six
  File "/usr/local/lib/python3.4/site-packages/pip/_vendor/requests/__init__.py", line 53, in <module>
    from .packages.urllib3.contrib import pyopenssl
  File "/usr/local/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py", line 49, in <module>
    from ndg.httpsclient.ssl_peer_verification import SUBJ_ALT_NAME_SUPPORT
  File "/usr/local/Cellar/python3/3.4.2_1/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/ndg/httpsclient/ssl_peer_verification.py", line 17
    except ImportError, e:
                      ^
SyntaxError: invalid syntax

当我运行Python 2.7.5版本时,我看到以下内容:

$ pip --version
pip 1.5.6 from /Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg (python 2.7)

仅出于理智目的,这是我进入交互式口译员时看到的内容:

$ python3
Python 3.4.2 (default, Oct 19 2014, 17:52:17) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.51)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

$ python
Python 2.7.5 (default, Mar  9 2014, 22:15:05) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()

与更新pip3有关的许多其他答案都建议我使用此命令更新pip3,该命令pip3 install --upgrade pip会产生相同的错误,或者我使用easy_install -U pip了该命令,但是由于brew如何设置Python,它只会更新Python 2.7.5版本(没有easy_install3)。有任何想法吗?

阿巴内特

根本问题是,您以某种方式将仅Python 2.x的软件包安装到了3.x站点软件包中。

在此基础上,实际上您已经相互交叉了两个不同的Python 2.7安装程序(Apple和Homebrew),这可能与如何将2.7程序包也集成到3.x中有关……

无论如何,这种中断的原因pip是它pip具有多种可选依赖项,如果存在,它将尝试导入,其中一些依赖项也是如此,依此类推,最终,开始pip导入ndg-httpsclient包。

我不确定你是怎么得到那个包裹的。标准的Homebrew 3.x会在安装目录之外的目录中查找两个额外的site-packages目录(python3然后启动,import sys; print(sys.path)以查看其看起来的所有位置,包括stdlib和site)pip3

在这种情况下,你已经以某种方式安装的2.x版ndg-httpsclient/usr/local/Cellar/python3/3.4.2_1/Frameworks/Python.framework/Versions/3.4/lib/‌​python3.4/site-packages

由于您没有使用它进行安装,pip而且,更重要的是,由于您无法pip首先运行,因此您不能仅安装pip uninstall它。所以:

rm -rf /usr/local/Cellar/python3/3.4.2_1/Frameworks/Python.framework/Versions/3.4/lib/‌​python3.4/site-packages/ndg*

这可能会破坏其他依赖它的软件包。一旦一切正常,您就可以pip3 list用来查看已安装的所有站点包并进行测试。如果您想变得偏执,请执行以下操作:

$ pip3 list > mypackages
$ rm -rf <each site-package directory>
$ brew uninstall python3
$ brew install python3
$ pip3 install -r mypackages

您可能想要类似地清理Homebrew 2.7(或仅将其报废并仅使用Apple的-尤其是因为我很确定您仍在运行Apple的Homebrew),以及Apple 2.7的站点程序包(而不是Apple的Python本身) ,当然,因为您无法将其卸载)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

pip3 --version 导入错误

来自分类Dev

Python 3.6.2 pip3 安装失败

来自分类Dev

pip3 安装 virtualenv 失败

来自分类Dev

pip3失败,但是pip与virtualenv可以正常工作

来自分类Dev

Python3 pip3在Ubuntu上安装失败

来自分类Dev

Python3 pip3在Ubuntu上安装失败

来自分类Dev

pip3 install couchdbkit 失败,出现“命令”python setup.py egg_info”

来自分类Dev

使用pip3安装NumPy失败,但是可以使用pip安装

来自分类Dev

pip3 install pyautogui失败,错误代码为1 Mac OS

来自分类Dev

为什么在Debian 10 Buster上'pip3 install netifaces'失败?

来自分类Dev

Ansible 运行分析工具:使用 pip3 安装 mysqlclient 期间出现异常

来自分类Dev

pip3的PermissionError

来自分类Dev

pip失败,出现ReadTimeoutError

来自分类Dev

为什么 numpy 没有出现在我的 virtualenv 中的 pip3 列表中,即使我在两秒前执行 pip3 install numpy 安装了它?

来自分类Dev

从 .local/bin/pip3 中删除 pip3

来自分类Dev

pip --version安装后返回SyntaxError(语法无效)

来自分类Dev

pip --version 安装后返回 SyntaxError(无效语法)

来自分类Dev

在Powershell中,Pip3与Pip相同

来自分类Dev

与`pip`和`pip3`混淆的行为

来自分类Dev

Virtualenv未检测到pip3

来自分类Dev

Pip3安装模块在哪里?

来自分类Dev

使用virtualenv安装pip3

来自分类Dev

如何使pip3在Linux上工作

来自分类Dev

pip3在macOS上崩溃

来自分类Dev

无法使用pip3安装DjangoRestFramework?

来自分类Dev

使用pip3安装JupyterLab

来自分类Dev

无法在ubantu中安装“ pip3”

来自分类Dev

从pip3安装软件包

来自分类Dev

在3.7中使用pip3?