ModuleNotFoundError: No module named 'distutils.core' ModuleNotFoundError: No module named 'distutils.core' python python

ModuleNotFoundError: No module named 'distutils.core'


Python base interpreter does require some additional modules. Those are not installed with e.g. Ubuntu 18.04 as default.

To solve this we need to first find the python version you're running. If you have only installed one python version on your system (and you are sure about it) you can skip this step.

# from your project interpreter run# your_project_python --version$ python3 --versionPython 3.7.8

You now need to install for this precise python interpreter the distutils.So here the solution for this example would be:

sudo apt install python3.7-distutils# sudo apt install python3-distutils  # would just update default python intrpreter

Keep in mind, that just running python from any command line might be an other version of python then you're running in your project!

If this hasn't helped, look for the following possibilities. This will bring you the binary which resolved from the alias in the command line.

$ which python/usr/bin/python$ ls -lach /usr/bin/pythonlrwxrwxrwx 1 root root 9 Jun  8  2018 /usr/bin/python -> python2.7

original source: refer to this article

For this answer I've also merged, summarized, ordered and explained some of the content which has been provided by Neo, Andrei, Mostafa and Wolfgang.


Other Cases

This happened on my python3.7 installation but not my main python3 after i upgrade my ubuntu to 20.04

Solution:

sudo add-apt-repository ppa:deadsnakes/ppasudo apt-get updatesudo apt install python3.7


If I have multiple versions of python3 (etc 3.8 as main and 3.9 from ppa:deadsnakes/ppa) on ubuntu 20.04 (in my case kubuntu 20.04) and it doesn't work

sudo apt install python3-distutils

then it works for me

sudo apt install python3.9-distutils