Alfred Huang
Alfred Huang

Reputation: 18235

How to run pip from different versions of python using the python command?

I'm now currently using Python on Ubuntu 15.10.

But in my OS, I have many different python versions installed:

So, it got messy with the versions of the packages in different environments. For example, if I run:

pip3 install django

But in fact, I cannot import django inside python3.5.

Is there any efficient way to call the correct version of pip?

Note:
Don't suggest that I use virtualenv, I know about it and am seeking another solution.

Upvotes: 26

Views: 60424

Answers (4)

Franke
Franke

Reputation: 1282

This solution worked for me:

sudo python2.7 -m pip install [package name]

Upvotes: 3

masudak
masudak

Reputation: 171

How about using pyenv?

You can switch the version.

$ pyenv install 2.7.X
$ pyenv install 3.5.X
$ pyenv local 2.7.X
$ pyenv global 3.5.X

Upvotes: 5

spacegoing
spacegoing

Reputation: 5306

Why not using anaconda?

If you use conda, you can easily create/manage virtual env. For example, if you have root env python 3.4 and py27 env for python 2.7, you can easily switch between them use command source activate [env]

source activate py27
conda install SomePackage

Upvotes: 0

Alfred Huang
Alfred Huang

Reputation: 18235

Finally I found the solution myself, see the Docs:

https://docs.python.org/3/installing/index.html?highlight=pip#work-with-multiple-versions-of-python-installed-in-parallel

Just call:

pythonXX -m pip install SomePackage

That would work separately for each version of installed python.

Also, according to the docs, if we want to do the same thing in windows, the command is a bit different:

py -2   -m pip install SomePackage  # default Python 2
py -2.7 -m pip install SomePackage  # specifically Python 2.7
py -3   -m pip install SomePackage  # default Python 3
py -3.4 -m pip install SomePackage  # specifically Python 3.4

Upvotes: 72

Related Questions