我在Ubuntu 12.04中同时安装了python2.7和python3.2。 符号链接python链接到python2.7。

当我输入:

sudo pip install package-name

它将默认安装python2版本的package-name。

有些包同时支持python2和python3。 如何通过pip安装python3版本的package-name ?


当前回答

你应该安装所有依赖项: Sudo apt-get install build-essential python3-dev python3-setuptools python3-numpy python3-scipy libatlas-dev libatlas3gf-base 安装pip3(如果您已经安装,请参阅步骤3): Sudo apt-get install python3-pip 我通过pip3安装scikit-learn pip3 install -U scikit-learn 打开终端并输入python3环境,输入import sklearn来检查它。

其他回答

老问题了,但没有一个答案能让我满意。我的一个系统运行的是Ubuntu 12.04 LTS,由于某种原因,Python 3没有python3-pip或Python -pip包。下面是我所做的(所有命令都以root身份执行):

Install setuptools for Python3 in case you haven't. apt-get install python3-setuptools or aptitude install python3-setuptools With Python 2.4+ you can invoke easy_install with specific Python version by using python -m easy_install. So pip for Python 3 could be installed by: python3 -m easy_install pip That's it, you got pip for Python 3. Now just invoke pip with the specific version of Python to install package for Python 3. For example, with Python 3.2 installed on my system, I used: pip-3.2 install [package]

如果你在两个python中都安装了pip,并且都在你的路径中,只需使用:

$ pip-2.7 install PACKAGENAME
$ pip-3.2 install PACKAGENAME

引用:

http://www.pip-installer.org/docs/pip/en/0.8.3/news.html#id4 https://github.com/pypa/pip/issues/200

这是问题2812520的副本

您可能想要构建一个python3的virtualenv,然后在激活virtualenv后安装python3的包。这样你的系统就不会乱套了:)

这可能是这样的:

virtualenv -p /usr/bin/python3 py3env
source py3env/bin/activate
pip install package-name

Ubuntu 12.10+和Fedora 13+有一个名为python3-pip的包,它将安装pip-3.2(或pip-3.3, pip-3.4或新版本的pip3),而不需要跳过这些步骤。


我遇到了这个问题,并在不需要wget或virtualenvs(假设Ubuntu 12.04)的情况下修复了这个问题:

安装python3-setuptools包:运行sudo aptitude Install python3-setuptools,这将为您提供easy_install3命令。 使用Python 3的setuptools安装pip:运行sudo easy_install3 pip,这将为您提供类似kev的解决方案的pip-3.2命令。 安装你的PyPI包:运行sudo pip-3.2 Install <package>(当然,在你的基本系统中安装python包需要root)。 ... 利润!

你可以简单地输入终端/控制台。

命令

sudo apt update
sudo apt upgrade
sudo apt install python3-pip3
pip3 install package-name