I was wondering how to install python2.7 correctly. On my other install zlib doesn't work and pip doesn't install correctly and I was forced to use python3 from the command line.

I have a fresh Ubuntu 17.10 install and would like to be able to use pip and stuff. I think it was because python is installed already in Ubuntu and I installed another version or something because python-based command line tools like volatility worked.

Is there any way to fix it so I can install modules and stuff or use the already installed python from command line?

  • I'm using 17.10. I want to use the command line version and install libraries but I'm not sure how. – user7853796 Nov 28 '17 at 20:10

To install Python 2.7 you simply need to do the following in Ubuntu 17.10 in a terminal (they work beautifully side by side out of the box):

# refreshing the repositories
sudo apt update
# its wise to keep the system up to date!
# you can skip the following line if you not
# want to update all your software
sudo apt upgrade
# installing python 2.7 and pip for it
sudo apt install python2.7 python-pip
# installing python-pip for 3.6
sudo apt install python3-pip

NOTE: Do not try to remove python 3.6 as it will screw up your system

You can call python pip the following way:

# for python 2.7
pip2 install <package>
# for python 3.6
pip install <package>

Using pip without a number would install python 3.6 packages.


My own experience in installation of Python and all needed packages. Tested on Ubuntu 18.04 (not tested on 17.10). I could be wrong, because I'm not specialist in Ubuntu.

It is better use apt (apt-get) command instead of pip command, because:

  1. apt installs only tested on Ubuntu packages and depencences;
  2. sudo apt update/upgrage command keeps packages up to date;
  3. if you want install/update packages for all users on your Ubuntu system, not only for your own local account;
  4. if you want packages for Ubuntu, so operating system could use them too.

For other versions of packages one should use virtual environment. Or build and test packages from the source codes (for specialists only).

Don't delete current python3, otherwise Ubuntu OS will BROKE.

# Refreshing the repositories
sudo apt update
# Update software
sudo apt upgrade

# Install Python and necessary packages.

# Install pip for 2.7 and then python 2.7 itself
sudo apt install python-pip
sudo apt install python2.7

# Install pip for 3.6
sudo apt install python3-pip
# Install currently supported by Ubuntu python 3.x version.
sudo apt install python3

# Don't delete current python3, otherwise Ubuntu OS will BROKE.
# Better don't install the newest versions 3.7, 3.8, 4.0, etc. on the whole OS (globally).
# This command works, but it's a bad idea to use it -- sudo apt install python3.7
#     in this case import of numpy (import numpy) and other modules will fail for python3.7,
#     because 3.6 is the current (global) python version for Ubuntu, not 3.7.
# Use "sudo apt install python3" not "sudo apt install python3.7" command for python 3.x installation.
# If you need 3.7 or newer, use local virtual environment.
# It's a bad idea to have several versions of python 3.x globally at the same time.
# Use only currently supported by Ubuntu python 3.x version globally. At this moment it is 3.6.

# Install numpy, scipy, matplotlib, scikit-learn, scikit-image,
# opencv with contributions, pandas, pillow, psutil, spur, cython,
#ipython, jupyter, git.
sudo apt install python-numpy
sudo apt install python3-numpy
sudo apt install python-scipy
sudo apt install python3-scipy
sudo apt install python-matplotlib
sudo apt install python3-matplotlib
sudo apt install python-sklearn
sudo apt install python3-sklearn
sudo apt install python-skimage
sudo apt install python3-skimage
sudo apt install python-opencv
sudo apt install python3-opencv
sudo apt install python-pandas
sudo apt install python3-pandas
sudo apt install python-pil
sudo apt install python3-pil
sudo apt install python-pil.imagetk  # if the imageTk import doesn't work
sudo apt install python3-pil.imagetk  # if the imageTk import doesn't work
sudo apt install python-psutil
sudo apt install python3-psutil
sudo apt install python-spur
sudo apt install python3-spur
sudo apt install cython
sudo apt install cython3
sudo apt install python-ipython
sudo apt install python3-ipython
sudo apt install ipython
sudo apt install ipython3
sudo apt install jupyter
sudo apt install git

# To have both python 2 and 3 available on jupyter
sudo apt install python-ipykernel
sudo apt install python3-ipykernel

# To check installed packages use commands
# and

# Then type in python 2 or 3 console
import numpy
import scipy
import matplotlib
import sklearn
import skimage

# To check ipython

# To check jupyter run
jupyter notebook
# and check both version of python 2 and 3 in "New" menu

# To remove package (don't remove python3 -- it'll broke your Ubuntu)
sudo apt purge --auto-remove packagename
# To search for the package:
apt search packagename

# Install PyCharm Community edition
sudo snap install pycharm-community --classic
# To check PyCharm installation enter:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.