[Update: 28 December 2020]: Looking for Python 3.9 install?

So this will be a very short post on how to install Python 3.8 on a Raspberry Pi. You can actually build great things with python on a Raspberry, like my Smart Meter reader with P1 cable and Python.

The Raspberry Pi OS is the Foundation’s official supported operating system and comes pre-installed with 2 versions of Python. Last time I checked 2.7.x and 3.5.x. If you want to develop in Python 3 (and YES you want to develop in version 3), you need to specify the version of Python you are using each time and that is annoying! So, lets install the 3.8 version and make it your default!

Install Python 3.8

First make sure you can ssh to your Raspberry Pi. The default SSH user and password on Raspberry Pi OS are:
– login: pi
– password: raspberry

You cannot login to your Raspberry Pi with SSH? Read this!

First install the dependencies needed to build:

sudo apt-get update

sudo apt-get install -y build-essential tk-dev libncurses5-dev libncursesw5-dev libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev libexpat1-dev liblzma-dev zlib1g-dev libffi-dev

Compile (yes... it takes a while, grab a coffee and get me one to!!)

wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tar.xz
tar xf Python-3.8.0.tar.xz
cd Python-3.8.0
./configure --prefix=/usr/local/opt/python-3.8.0
make -j 4

Let's install what was compiled!

sudo make altinstall

And remove the files you don't need anymore

cd ..
sudo rm -r Python-3.8.0
rm Python-3.8.0.tar.xz
. ~/.bashrc

And yes!!! Let's make Python 3.8 the default version, make aliases

sudo update-alternatives --config python

And verify:

python -V

Your are ready to go!

Happy programming!!