1. ホーム
  2. python

[解決済み] ModuleNotFoundError: distutils.core'という名前のモジュールはありません。

2022-10-12 17:40:47

質問

最近 Ubuntu 18.04 から 19.04 となっており python 3.7 . しかし、私は多くのプロジェクトで Python 3.6 .

今度は virtualenvPython 36 をPyCharmで実行すると、raiseします。

ModuleNotFoundError: No module named 'distutils.core'

どうしたらいいのかわからない。

distutilsをインストールしようとしたのですが。

milano@milano-PC:~$ sudo apt-get install python3-distutils
Reading package lists... Done
Building dependency tree       
Reading state information... Done
python3-distutils is already the newest version (3.7.3-1ubuntu1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

しかし、ご覧の通り、私は最新版を持っています。

どうすればいいかわかりますか?

どのように解決しますか?

Python の基本インタプリタには、いくつかの追加モジュールが必要です。これらは、例えば Ubuntu 18.04 ではデフォルトではインストールされません。

これを解決するために、まず、実行している Python のバージョンを見つける必要があります。システムに 1 つの python バージョンしかインストールしていない場合 (そして、それについて確信がある場合)、このステップをスキップできます。

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

ここで、正確なpythonインタプリタのために、distutilsをインストールする必要があります。 そのため、ここでは 解決策 はこの例のためになります。

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

コマンドラインからpythonを実行すると、プロジェクトで実行しているものとは別のバージョンのpythonになる可能性があることに留意してください!

これで解決しない場合は、次の可能性を探してみてください。これは、コマンドラインのエイリアスから解決されたバイナリをもたらします。

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

元のソース この記事を参照する

この回答では、Neo、Andrei、Mostafa、Wolfgangから提供された内容の一部を統合し、要約し、順序付けし、説明しました。

sorcerer's apprentice のための余談として。 Python インタープリタをアンインストールしたくなるかもしれません。提案された解決策では、まったく必要ありません! しかし、OS全体が依存する1つのPythonインタープリタがあることを心に留めておいてください。だから、このデフォルトのものはアンインストールしない方がいい。もしそうしてしまうと、デスクトップのタスクバーや基本的にすべてのものを見つけるのに、ある種の混乱に陥ってしまいます。