Python pip3错误-'_名称空间路径';对象没有属性';排序';

Python pip3错误-'_名称空间路径';对象没有属性';排序';,python,pip,python-3.5,attributeerror,Python,Pip,Python 3.5,Attributeerror,我试图通过pip3安装一个软件包,但出现了这个错误。我运行的每个pip/pip3命令都会出现以下错误- alexg@hitbox:~$ pip3 -V Traceback (most recent call last): File "/usr/local/bin/pip3", line 7, in <module> from pip import main File "/home/alexg/.local/lib/python3.5/site-packages/pip

我试图通过pip3安装一个软件包,但出现了这个错误。我运行的每个pip/pip3命令都会出现以下错误-

alexg@hitbox:~$ pip3 -V
Traceback (most recent call last):
  File "/usr/local/bin/pip3", line 7, in <module>
    from pip import main
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/__init__.py", line 26, in <module>
    from pip.utils import get_installed_distributions, get_prog
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/utils/__init__.py", line 27, in <module>
    from pip._vendor import pkg_resources
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3018, in <module>
    @_call_aside
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3004, in _call_aside
    f(*args, **kwargs)
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3046, in _initialize_master_working_set
    dist.activate(replace=False)
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2578, in activate
    declare_namespace(pkg)
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2152, in declare_namespace
    _handle_ns(packageName, path_item)
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2092, in _handle_ns
    _rebuild_mod_path(path, packageName, module)
  File "/home/alexg/.local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2121, in _rebuild_mod_path
    orig_path.sort(key=position_in_sys_path)
AttributeError: '_NamespacePath' object has no attribute 'sort'
alexg@hitbox:~$pip3-V
回溯(最近一次呼叫最后一次):
文件“/usr/local/bin/pip3”,第7行,在
从pip导入主
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_init__.py”,第26行,在
从pip.utils import get_installed_发行版,get_prog
文件“/home/alexg/.local/lib/python3.5/site packages/pip/utils/_init__.py”,第27行,在
从pip.\u供应商导入包装资源
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_vendor/pkg_resources/_init__.py”,第3018行,在
@_把你叫到一边
文件“/home/alexg/.local/lib/python3.5/site-packages/pip/\u-vendor/pkg\u-resources/\uuuuu-init\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
f(*args,**kwargs)
文件“/home/alexg/.local/lib/python3.5/site-packages/pip/\u-vendor/pkg\u-resources/\u\u\u-init\u\u.py”,第3046行,在主工作集中
dist.activate(replace=False)
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_vendor/pkg_resources/_init__.py”,第2578行,在activate中
声明_名称空间(pkg)
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_vendor/pkg_resources/_init__.py”,第2152行,位于declare_命名空间中
_句柄(packageName,路径项)
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_vendor/pkg_resources/_init__.py”,第2092行,在句柄中
_重建模块路径(路径、packageName、模块)
文件“/home/alexg/.local/lib/python3.5/site packages/pip/_vendor/pkg_resources/_init__.py”,第2121行,位于重建模块路径中
排序(键=系统路径中的位置)
AttributeError:“\u NamespacePath”对象没有“sort”属性
我试过运行
pip3安装--根据一些答案升级pip setuptools
,但每个pip命令都会给我错误。我被困住了,什么也做不了

是什么原因造成的,如何修复


我使用的是Ubuntu
16.04
和Python
3.5.2

,这可能意味着你的依赖关系被搞乱了

尝试从头卸载pip3,它应该可以工作

如果它不起作用,请删除您的
pip
安装。就你而言:

rm -r /home/alexg/.local/lib/python3.5/site-packages/pip/

当然,下次最好使用:)

我在python 3.5.2和pip3(9.0.1)中遇到了同样的问题。我通过以下解决方法解决了这个问题:

更具体地说,我编辑了该文件的第2121~2122行:“sudo vim/usr/local/lib/python3.5/dist packages/pip/_vendor/pkg_resources/u init_u.py”


这听起来可能很奇怪,因为我遇到了这个问题,我尝试了SO和GitHub问题中提到的所有内容。但后来我用easyinstall安装了pip,并且pip命令正在工作。也许现在有2个pip包了。但错误已经消失了

easy\u安装pip

尝试:
sudo easy\u安装pip
然后

sudo easy\u安装设置工具


这可能是因为混乱的依赖关系造成的。

升级setuptools对我来说很有效:

pip3 install --upgrade setuptools
尝试-
pip安装-U pip

pip安装-U setuptools


如果编辑
\uuuu init\uuuu.py
没有帮助。

我在使用诗歌时也遇到了同样的问题

运行

poetry run pip install --upgrade pip setuptools
而不是

pip install --upgrade pip setuptools

已修复此问题。

我正在使用
virtualenv
,升级设置工具对我不起作用。我们所做的工作是:


我也遇到了同样的问题,无法使用pip3运行任何命令(包括任何类似于
pip3安装的命令——升级pip setuptools


我找到的唯一修复方法是完全卸载并重新安装python3(
sudo-apt-get-remove-python3
sudo-apt-get-install-python3
sudo-apt-install-python3-pip
),现在pip3又正常工作了。

还有另一个答案,但下面是最终为我解决问题的答案。由于
pip
遭到破坏,我无法使用它来升级自身或
setuptools
,同时使用
easy\u install
也带来了同样的问题。因此,我尝试使用
Python
安装
pip

答案是:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py 
pip install --upgrade setuptools

在尝试了各种方法后,例如重新安装pip、setuptools,仍然无法解决问题。 我遵照的指示,并且只有一个外部警告。 之后,我使用pip卸载matplotlib。
最后,所有的事情似乎都没问题。

我尝试了上面建议的大多数解决方案,但没有任何效果,因为pip3完全不起作用,然后我发现:

我想这可能是我们大多数人的问题。我尝试了建议的解决方案,pip3又开始工作了

对我来说,matplotlib不存在于dist包中,而是存在于站点包中,因此对我有效的命令是:

sudo rm ~/.local/lib/python3.5/site-packages/matplotlib-3.0.3-py3.5-nspkg.pth

当然,您需要根据matplotlib的版本和位置更改上述路径。

我一直存在此问题(并使用下面的解决方法在python3解释器中使用pip)。令我惊讶的是,在卸载所有版本的numpy并重新安装最新版本后,pip又开始工作了。我不能确定到底发生了什么,但如果其他一切都失败了,这可能是一件值得尝试的事情

解决方法(从我不记得的几个来源拼凑而成)是

  • 启动蟒蛇3
  • 导入pip两次(第一次出现错误)
  • 在解释器中使用pip.main
  • 以下是发言稿:

    >>> import pip
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py",
        __import__(vendored_name, globals(), locals(), level=0)
    ImportError: No module named 'pip._vendor.pkg_resources'
    
    During handling of the above exception, another exception occurred
    
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/python3/dist-packages/pip/__init__.py", line 13,
        from pip.exceptions import InstallationError, CommandError, Pi
      File "/usr/lib/python3/dist-packages/pip/exceptions.py", line 6,
        from pip._vendor.six import iteritems
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", l
        vendored("pkg_resources")
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", l
        __import__(modulename, globals(), locals(), level=0)
                                    .
                                   etc
                                    .
    AttributeError: '_NamespacePath' object has no attribute 'sort'
    >>> import pip
    >>> pkgs = ['asciiplotlib']
    >>> pip.main(['install'] + pkgs + ['--upgrade'])
    Collecting asciiplotlib
      Using cached https://files.pythonhosted.org/packages/15/c5/46a2d
    Installing collected packages: asciiplotlib
    Successfully installed asciiplotlib-0.1.8
    
    导入pip 回溯(最近一次呼叫最后一次): 文件“/usr/lib/python3/dist packages/pip/\u vendor/\uuuu init\uuuuuu.py”, __导入(供应商名称,全局变量(),局部变量(),级别=0) ImportError:没有名为“pip.\u vendor.pkg\u resources”的模块 在处理上述异常期间,发生了另一个异常 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 文件“/usr/lib/python3/dist-packages/pip/_-init___.py”,第13行, 来自pip.exe
    sudo rm ~/.local/lib/python3.5/site-packages/matplotlib-3.0.3-py3.5-nspkg.pth
    
    >>> import pip
    Traceback (most recent call last):
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py",
        __import__(vendored_name, globals(), locals(), level=0)
    ImportError: No module named 'pip._vendor.pkg_resources'
    
    During handling of the above exception, another exception occurred
    
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "/usr/lib/python3/dist-packages/pip/__init__.py", line 13,
        from pip.exceptions import InstallationError, CommandError, Pi
      File "/usr/lib/python3/dist-packages/pip/exceptions.py", line 6,
        from pip._vendor.six import iteritems
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", l
        vendored("pkg_resources")
      File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", l
        __import__(modulename, globals(), locals(), level=0)
                                    .
                                   etc
                                    .
    AttributeError: '_NamespacePath' object has no attribute 'sort'
    >>> import pip
    >>> pkgs = ['asciiplotlib']
    >>> pip.main(['install'] + pkgs + ['--upgrade'])
    Collecting asciiplotlib
      Using cached https://files.pythonhosted.org/packages/15/c5/46a2d
    Installing collected packages: asciiplotlib
    Successfully installed asciiplotlib-0.1.8
    
    $curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
    
    $python get-pip.py
    
    $python3 get-pip.py