Read in 3 minutes

last updated 

How to Install Python 3.7 on Ubuntu 18.04

Python is one of the most popular programming languages in the world. With its simple and easy to learn syntax Python is a great choice for beginners and experienced developers. Python is quite a versatile programming language, you can use it to do almost anything you want, write small scripts, build games, develop websites, create machine learning algorithms, analyze data and more.

Python 3.7 is the latest major release of the Python language, and it includes many new features such as postponed evaluation of type annotations, support for data classes and context variables, customization of access to module attributes, and more.

This tutorial describes two ways of installing Python 3.7 on Ubuntu 18.04: By using the standard apt tool from the deadsnakes PPA, and by building from the source code.

The same steps apply for Ubuntu 16.04 and any Ubuntu-based distribution, including Kubuntu, Linux Mint and Elementary OS.


You’ll need to be logged in as a user with sudo access to be able to install packages on your Ubuntu system.

Installing Python 3.7 on Ubuntu with Apt

Installing Python 3.7 on Ubuntu with apt is a relatively straightforward process and will only take a few minutes:

  1. Start by updating the packages list and installing the prerequisites:

    sudo apt update
    sudo apt install software-properties-common
  2. Next, add the deadsnakes PPA to your sources list:

    sudo add-apt-repository ppa:deadsnakes/ppa

    When prompted press Enter to continue:

    Press [ENTER] to continue or Ctrl-c to cancel adding it.
  3. Once the repository is enabled, install Python 3.7 with:

    sudo apt install python3.7
  4. At this point, Python 3.7 is installed on your Ubuntu system and ready to be used. You can verify it by typing:

    python3.7 --version
    Python 3.7.3

Installing Python 3.7 on Ubuntu from Source

In this section we’ll show you how to download and compile Python 3.7:

  1. First, update the packages list and install the packages necessary to build Python source:

    sudo apt update
    sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget
  2. Download the latest release’s source code from the Python download page using the following wget command:


    At the time of writing this article, the latest release is 3.7.3.

  3. Once download is complete, extract the tarball:

    tar -xf Python-3.7.3.tar.xz
  4. Next, navigate to the Python source directory and run the configure script which will perform a number of checks to make sure all of the dependencies on your system are present:

    cd Python-3.7.3
    ./configure --enable-optimizations

    The --enable-optimizations option will optimize the Python binary by running multiple tests which will make the build process slower.

  5. Start the Python build process using make:

    make -j 8

    For faster build time, modify the -j flag according to your processor. If you do not know the number of cores your processor you can find it by typing nproc. My system has 8 cores, so I am using the -j8 flag.

  6. When the build is done install the Python binaries by typing:

    sudo make altinstall

    Do not use the standard make install as it will overwrite the default system python3 binary.

  7. Python 3.7 is installed and ready to be used, verify it by typing:

    python3.7 --version
    Python 3.7.3


You have installed Python 3.7 on your Ubuntu 18.04 machine and you can start developing your Python 3 project.

Next, you can read about How to Use Pip and How to Create Python Virtual Environments for different Python projects.

If you have any questions or feedback, feel free to comment below.