如何在 ubuntu 12.04 LTS 中为 python 3 安装 pip

BCa*_*iro 120 python3 software-installation

我正在尝试为 python 3.3 安装 Pillow 模块,但为此我需要安装 pip。每次我安装 pip 它都会为 python 2.7 安装,有什么帮助吗?

Oli*_*Oli 144

2018 年更新:这仍然吸引了我担心的赞成票。

12.04 已经不支持大约一年了。安装 pip3 的最佳方法是升级到更新的受支持的 Ubuntu 版本。您有 3 个 LTS 版本可供选择。


虽然在更现代的 Ubuntu 版本上你可以sudo apt-get install python3-pip(然后使用pip3),但pip12.04的 Python 3 副本从未打包。

因此,您需要遵循更老式的安装路线easy_install

sudo apt-get install python3-setuptools
sudo easy_install3 pip
Run Code Online (Sandbox Code Playgroud)

现在,这很有可能会与 Python 2pipoverride 发生冲突/usr/bin/pip,因为它将安装一个基于 python3 的/usr/local/bin/pip,它也在 Ubuntu 12.04 的 $PATH 中。

它不应该覆盖它,只要你知道,它可能是可以接受的。然而,virtualenv正如这个答案所暗示的那样,最好开始调查 的快乐世界。

或者,您可以重命名易于安装的 python3 版本的 pip:

sudo mv /usr/local/bin/pip /usr/local/bin/pip-3
Run Code Online (Sandbox Code Playgroud)

然后你可以确认你现有的 pip 仍然是基于 python2.7 的:

pip --version
Run Code Online (Sandbox Code Playgroud)


dme*_*meu 43

You may also install it by sudo apt-get install python3-pip and then call it by pip3. Et voilà

  • 不适用于 Ubuntu 12.04 LTS。 (14认同)
  • @MariusGedminas 那么也许您不应该只使用过时的存储库。即使 `precise` 仍然*受支持*,这并不一定意味着它具有最新的软件。这只是意味着他们将它保持在线,在“官方回购”上,而不是将其移动到 apt-get 无法访问的“旧回购”;这样您的包管理器就不会中断。举个例子:我试过了,效果很好;我的sources.list 使用`trusty` 存储库,只需在sources.list 中添加一些内容并执行apt-get 更新即可在12.04 中使用它。 (2认同)

Gx1*_*TDa 13

If you work with several versions of python on the same machine, it might be useful to work with virtual environments. This allows you to work with as many instances of python you want, each with their own set of packages. This is very useful if you're working with several versions of python, and/or if your projects require different versions of the same package(s).

To set this up:

sudo pip install virtualenv 
Run Code Online (Sandbox Code Playgroud)

This can be done with ANY pip, so also with the standard pip using python 2.7. Then, to make a virtual environment with python3 as the interpreter, do:

virtualenv my_py3 --python=/usr/bin/python3
source my_py3/bin/activate # to activate the python3 environemt
Run Code Online (Sandbox Code Playgroud)

Then install any packages you might want using

pip install <package> # no sudo required now, as you're IN the virtual environment
Run Code Online (Sandbox Code Playgroud)

To stop the virtual environment, simple type:

deactivate
Run Code Online (Sandbox Code Playgroud)