Pip3 实际上正在运行 python2?

Pip3 实际上正在运行 python2?

有人可以向我解释一下,为什么要安装带有安装...python 2 的python3-pip包吗?aptpip3

$ pip3 --version
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ which pip3 | xargs head -n 1
#!/usr/bin/python
$ ls /usr/bin/python
lrwxrwxrwx 1 root root 9 maj 18  2016 /usr/bin/python -> python2.7

我不知道这是否应该困扰我这么多,但为了符合 XY 问题解决:我之所以问这个问题,是因为由于这个特殊的设置,许多 pip3 安装失败 - 例如,在sudo -H pip3 install docker-compose

$ docker-compose
Traceback (most recent call last):
  File "/usr/local/bin/docker-compose", line 7, in <module>
    from compose.cli.main import main
  File "/usr/local/lib/python2.7/dist-packages/compose/cli/main.py", line 20, in <module>
    from ..bundle import get_image_digests
  File "/usr/local/lib/python2.7/dist-packages/compose/bundle.py", line 14, in <module>
    from .service import format_environment
  File "/usr/local/lib/python2.7/dist-packages/compose/service.py", line 14, in <module>
    from docker.utils import LogConfig
ImportError: cannot import name LogConfig

我在跑Ubuntu GNOME 16.04

答案1

您试过吗—— sudo -H python3 -m pip install ..

这样做python3 -m pip将明确调用 python3 的 pip。

抱歉,将此作为答案发布。我的声誉不足以发表评论。

相关内容