Install the Python 2 and Python 3 if you have not done so.
sudo apt-get install python python3
python-virtualenvpackages. This step is the key.
sudo apt-get install python-virtualenv
Show that you have both python 2 and 3 binaries. In the Linux system I am using for this post, the python binary by default points to Python 2's binary. Yours may differ.
$ python --version Python 2.7.6 $ python3 --version Python 3.4.3
To develop or run some applications in python 3, we need to activate Python 3. Then, first create a directory as the working directory for the Python 3 application. For instance, we name the directory as
$ mkdir proj_python_3
Now switch to the directory.
cd proj_python_3 $ which python3 /usr/bin/python3
Then activate Python 3, we first need to set up an environment in the working directory for Python 3.
$ virtualenv -p /usr/bin/python3 .env Running virtualenv with interpreter /usr/bin/python3 Using base prefix '/usr' New python executable in .env/bin/python3 Also creating executable in .env/bin/python Installing setuptools, pip...done.
Now we can activate Python 3 any time we wish after we switch to the working directory.
$ pwd /home/user/proj_python_3 $ . .env/bin/activate (.env)$
Note that the prompt shows that you are under a virtual environment for Python 3. You can show that the activated Python version is Python 3.
(.env)$ python --version Python 3.4.3
To deactivate the virtual environment, run the following,
(.env)$ deactivate $ python --version Python 2.7.6
Saturday, July 9, 2016
Running Multiple Versions of Python on a Single Linux System
While some Python applications are written in Python 3, some others are still being maintained and developed in Python 2. That is to say, there is a need to run multiple versions of Python on a single system. The following steps show that you can install multiple versions of Python on a single Linux system, and activate and deactivate the version you wish to use conveniently by leveraging on virtual python environments. Note that the following steps are tested on a Debian-based Linux system, such as Debian Linux and Ubuntu Linux