ChatGPT解决这个技术问题 Extra ChatGPT

How to install python3 version of package via pip on Ubuntu?

I have both python2.7 and python3.2 installed in Ubuntu 12.04.
The symbolic link python links to python2.7.

When I type:

sudo pip install package-name

It will default install python2 version of package-name.

Some package supports both python2 and python3.
How to install python3 version of package-name via pip?

Are there separated pip-2.7 and pip-3.2 commands in your system?
Can I change the first line of /usr/bin/pip from #!/usr/bin/python to #!/usr/bin/python3 ?
Yes, but I would recommend you to cp the pip to pip-3.2 then change it, so you would get a better choice next time :)
If you are having trouble with pip-2.7, etc. Try running whereis pip from your command line. It seems they have changed the names to pip2.7 on Ubuntu 14.04.

a
akaIDIOT

Ubuntu 12.10+ and Fedora 13+ have a package called python3-pip which will install pip-3.2 (or pip-3.3, pip-3.4 or pip3 for newer versions) without needing this jumping through hoops.

I came across this and fixed this without needing the likes of wget or virtualenvs (assuming Ubuntu 12.04):

Install package python3-setuptools: run sudo aptitude install python3-setuptools, this will give you the command easy_install3. Install pip using Python 3's setuptools: run sudo easy_install3 pip, this will give you the command pip-3.2 like kev's solution. Install your PyPI packages: run sudo pip-3.2 install (installing python packages into your base system requires root, of course). … Profit!


Perfect and proper, this should be the accepted answer. However you should specify sudo pip-3.2 install <package>, superuser permissions are required.
You can combine steps 1 and 2 and just do: sudo apt-get install python3-pip
packages.ubuntu.com shows this super handy package for Ubuntu 12.10, but not for 12.04: packages.ubuntu.com/… (great find though ;))
pip-3.3, pip-3.4 etc no longer work. It is now just: pip, pip2, pip3. (At least on Ubuntu 14.04)
this solution also works on debian wheezy and kali linux
F
Felix Yan

You may want to build a virtualenv of python3, then install packages of python3 after activating the virtualenv. So your system won't be messed up :)

This could be something like:

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

Does virtualenv install pip even if you don't have it installed in the main Python 3? If so, then this does solve his problem. Otherwise not.
Yes, virtualenv installs pip.
OK. I still think the answer doesn't really answer his question in a generic way, though.
This works for me. Two additions: You can leave the virtualenv with deactivate and python3 might be installed at a different location. Mine is at /usr/local/bin/python3, which you can find out with which python3
Following @LennartRegebro and @user2503795, I can confirm that this is a bit more robust: virtualenv -p `which python3` py3env
C
Chirag Maliwal

Short Answer

sudo apt-get install python3-pip
sudo pip3 install MODULE_NAME

Source: Shashank Bharadwaj's comment

Long Answer

The short answer applies only on newer systems. On some versions of Ubuntu the command is pip-3.2:

sudo pip-3.2 install MODULE_NAME

If it doesn't work, this method should work for any Linux distro and supported version:

sudo apt-get install curl
curl https://bootstrap.pypa.io/get-pip.py | sudo python3
sudo pip3 install MODULE_NAME

If you don't have curl, use wget. If you don't have sudo, switch to root. If pip3 symlink does not exists, check for something like pip-3.X

Much python packages require also the dev package, so install it too:

sudo apt-get install python3-dev

Sources:
python installing packages with pip
Pip latest install

Check also Tobu's answer if you want an even more upgraded version of Python.

I want to add that using a virtual environment is usually the preferred way to develop a python application, so @felixyan answer is probably the best in an ideal world. But if you really want to install that package globally, or if need to test / use it frequently without activating a virtual environment, I suppose installing it as a global package is the way to go.


The curl call borks for me with a syntax error on line 48.
@icedwater: can't help if you don't post the trace (use pastebin).
Thanks @MarcoSulla, but I just re-ran this and noticed a UserWarning: Support for Python 3.0-3.2 has been dropped. Future versions will fail here. The paste is at ix.io/1fX5 for all interested parties :)
A syntax error might occur when using a version of python that is no longer supported by pip. The above commands do work with python3.5
if pip is installed already and it still doesn't work, I recommend to sudo apt-get purge python3-pip first
l
laike9m

Well, on ubuntu 13.10/14.04, things are a little different.

Install

$ sudo apt-get install python3-pip

Install packages

$ sudo pip3 install packagename

NOT pip-3.3 install


Works on Ubuntu 14.04
Works on Ubuntu 16.04
This will work on all Ubuntu versions starting from 12.04
k
kev

The easiest way to install latest pip2/pip3 and corresponding packages:

curl https://bootstrap.pypa.io/get-pip.py | python2
pip2 install package-name    

curl https://bootstrap.pypa.io/get-pip.py | python3
pip3 install package-name

Note: please run these commands as root


l
lmiguelvargasf

I had the same problem while trying to install pylab, and I have found this link

So what I have done to install pylab within Python 3 is:

python3 -m pip install SomePackage

It has worked properly, and as you can see in the link you can do this for every Python version you have, so I guess this solves your problem.


Though Fedora has a python3-pip package, it does not create a pip3 or pip-3 command as suggested in other answers. This answer indeed works.
This works great, but it assumes that pip has already been installed via: sudo apt-get install python3-pip
H
Ha-Duong Nguyen

Old question, but none of the answers satisfies me. One of my systems is running Ubuntu 12.04 LTS and for some reason there's no package python3-pip or python-pip for Python 3. So here is what I've done (all commands were executed as 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]


C
Community

If you have pip installed in both pythons, and both are in your path, just use:

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

References:

http://www.pip-installer.org/docs/pip/en/0.8.3/news.html#id4

https://github.com/pypa/pip/issues/200

This is a duplicate of question #2812520


k
ketankk

If your system has python2 as default, use below command to install packages to python3

$ python3 -m pip install <package-name>


T
Tobu

Easy enough:

sudo aptitude install python3-pip
pip-3.2 install --user pkg

If you want Python 3.3, which isn't the default as of Ubuntu 12.10:

sudo aptitude install python3-pip python3.3
python3.3 -m pip.runner install --user pkg

F
Fahtima

You can alternatively just run pip3 install packagename instead of pip,


Your answer is a duplicate to many answers on this page. (Search "pip3" in text) I don't see any added value of this.
L
Lennart Regebro

Firstly, you need to install pip for the Python 3 installation that you want. Then you run that pip to install packages for that Python version.

Since you have both pip and python 3 in /usr/bin, I assume they are both installed with a package manager of some sort. That package manager should also have a Python 3 pip. That's the one you should install.

Felix' recommendation of virtualenv is a good one. If you are only testing, or you are doing development, then you shouldn't install the package in the system python. Using virtualenv, or even building your own Pythons for development, is better in those cases.

But if you actually do want to install this package in the system python, installing pip for Python 3 is the way to go.


N
Nixter

Although the question relates to Ubuntu, let me contribute by saying that I'm on Mac and my python command defaults to Python 2.7.5. I have Python 3 as well, accessible via python3, so knowing the pip package origin, I just downloaded it and issued sudo python3 setup.py install against it and, surely enough, only Python 3 has now this module inside its site packages. Hope this helps a wandering Mac-stranger.


j
jonnymac

Execute the pip binary directly.

First locate the version of PIP you want.

jon-mint python3.3 # whereis ip
ip: /bin/ip /sbin/ip /usr/share/man/man8/ip.8.gz /usr/share/man/man7/ip.7.gz

Then execute.

jon-mint python3.3 # pip3.3 install pexpect
Downloading/unpacking pexpect
  Downloading pexpect-3.2.tar.gz (131kB): 131kB downloaded
  Running setup.py (path:/tmp/pip_build_root/pexpect/setup.py) egg_info for package pexpect

Installing collected packages: pexpect
  Running setup.py install for pexpect

Successfully installed pexpect
Cleaning up...

c
cigien

You should install ALL dependencies: sudo apt-get install build-essential python3-dev python3-setuptools python3-numpy python3-scipy libatlas-dev libatlas3gf-base Install pip3(if you have installed, please look step 3): sudo apt-get install python3-pip Iinstall scikit-learn by pip3 pip3 install -U scikit-learn Open your terminal and entry python3 environment, type import sklearn to check it.


g
gunarevuri

To install pip for python3 use should use pip3 instead of pip. To install python in ubuntu 18.08 bionic before installing a version of python, activate virtual environment so that it won't have any problem in a future versions of python.

virtualenv -p /usr/bin/python3 py3env
source py3env/bin/activate

then install the actual python version you want.

>> sudo apt-get install python3.7

To install the required pip package in ubuntu
>> sudo apt-get install python3-pip


P
PRADDYUMN YADAV

You Can Simply type in terminal/console .

Commands

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

a
arpiagar

Another way to install python3 is using wget. Below are the steps for installation.

wget http://www.python.org/ftp/python/3.3.5/Python-3.3.5.tar.xz
tar xJf ./Python-3.3.5.tar.xz
cd ./Python-3.3.5
./configure --prefix=/opt/python3.3
make && sudo make install

Also,one can create an alias for the same using

echo 'alias py="/opt/python3.3/bin/python3.3"' >> ~/.bashrc

Now open a new terminal and type py and press Enter.