「setuptools」がインストールされているようですが、「pip」で「ModuleNotFoundError」が発生するのはなぜですか?

「setuptools」がインストールされているようですが、「pip」で「ModuleNotFoundError」が発生するのはなぜですか?

EC2インスタンスでを使用してPythonパッケージをインストールしようとしましたが、pipという例外が発生しますModuleNotFoundError: No module named 'setuptools'

状況に応じて、私が実行したコマンドは次のとおりです。

pip install --user mlflow

setuptools次のコマンドを使用してインストールの問題を解決しようとしましたsudo yum install python36-setuptools。ただし、返されたメッセージはsetuptoolsすでにインストールされていることを示します。

Package python36-setuptools-36.2.7-1.33.amzn1.noarch already installed and latest version
Nothing to do

アドバイスしてください。

修正する:EC2インスタンスをからに切り替えた後、を使用して正常にインストールできAmazon Linux AMI 2018.03.0ました。Amazon Linux 2 AMImlflowpip

問題はまだ残っています。なぜ使用できますが、正常Amazon Linux 2 AMIにインストールされないのですかAmazon Linux AMI 2018.03.0

ベストアンサー1

過去にこの問題を引き起こしていた可能性があるため、コンピュータにアクセスできない場合は確認するのが難しい場合があります。
最も可能性の高い説明は次のとおりです。

pippython2を指しているので、以前のAMIでは機能しませんが、pippython setuptools3.6がインストールされています。これをインストールする必要がありますpython-setuptools-36.2.7
正しいインストールツールがすでにインストールされているため、他のAMIでも動作できます。

これはまた、Python 2とPython 3が互換性がなく、python-2-librariesがPython 3で動作しないため、質問の2番目の部分への答えです。

もう1つの可能性は、root以外のユーザーとして実行されているpipがアクセスできないようにする権限の問題がある、またはsetuptools何らかの方法でパッケージを見つけることができないという問題があること
です。PYTHONPATH

バラよりこれ基本的なPythonバージョンとAMIのPython 2サポートについて説明します。

おすすめ記事