【问题标题】:Dealing with multiple Python versions?处理多个 Python 版本?
【发布时间】:2016-10-02 16:48:23
【问题描述】:

我的 Pip 版本有问题。我正在尝试安装 Anaconda 不支持的 pyDatalog 包。

   The following specifications were found to be in conflict:
  - pydatalog
  - python 3.5*

在我的 Ubuntu 中,我有两个版本的 Python(2.7 和带有 3.5 的 Anaconda)。对于 Python 2.7,我什至不知道是否安装了 Pip。

如何在一台计算机上为不同版本的 Python 安装两个不同版本的 Pip?我可以将一个版本的 Pip 用于两个版本的 Python 吗?

【问题讨论】:

  • 一般来说,我只有 anaconda 的 pip,但它不适用于 python 2.7
  • 你可以试试 'whereis python 2.7' 它应该显示 python 安装在哪里。据我所知,pip 支持像“pip-2.7 命令”这样的命令
  • 当我写这篇文章时,我得到了:pip2.7 Traceback (most recent call last): File "/usr/local/bin/pip2.7", line 9, in <module> load_entry_point('pip==7.1.0', 'console_scripts', 'pip2.7')() File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 558, in load_entry_point File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 2682, in load_entry_point File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 2355, in load File "build/bdist.linux-x86_64/egg/pkg_resources/__init__.py", line 2361, in resolve ImportError: No module named pip
  • 对不起我的错我忘记了语法。如您在堆栈跟踪“/usr/local/bin/pip2.7”中看到的正确命令“pip2.7 命令”。对于 python 3.5,正确的命令是“pip3.5 命令”。这是两个不同版本的 pip。
  • 旧版 Python2 未安装 pip,您必须自己安装 - 在 Ubuntu 上使用 apt-getapt - sudo apt-get install python-pip

标签: python python-2.7 pip conda pydatalog


【解决方案1】:

看看位于https://github.com/yyuu/pyenv/blob/master/README.md 的pyenv。

您可以安装多个版本的 python 和 pip。

自述文件包含有关安装 pyenv、安装所需的 python 版本以及在它们之间切换的说明。

【讨论】: