1. ホーム
  2. python

[解決済み] pip3: 不正なインタプリタです。そのようなファイルやディレクトリはありません

2022-02-25 10:13:55

質問

を使用して依存関係をインストールしようとしています。 pip3 コマンド

現在のシナリオ

Dev$ which python
/Users/Dev/anaconda/bin/python

Dev$ which python3
/usr/local/bin/python3


Dev$ pip --version
pip 10.0.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)

Dev$ pip3 --version
-bash: /usr/local/bin/pip3: /usr/local/opt/python3/bin/python3.6: bad 
interpreter: No such file or directory

なぜ私の pip3 コマンドが動作しない。

このようなことを試しました。

brew link --overwrite python 

解決方法は?

たくさんのPythonがインストールされており、さらに少なくとも1つのPythonの旧インストールを削除しています。

このような状況だからこそ pip または pip3 を直接使用することは推奨されなくなり、その代わりに

python3 -m pip install whatever

これは、絶対に確実に pip を使用した場合、その python3 を意味し、一方 pip3 を実行していることを意味するだけです。 pip と一緒になっている 一部 Python 3.xは、あなたがインストールした様々なもののうちのどれでもかまいません。

あるいは、もっといいのは、仮想環境を使うことです。 pythonpip は現在アクティブな環境からのコマンドであり、それらがシステム全体で何を意味するのかについては気にする必要はありません。


しかし、どうしてこのような事態になったのか、どうすれば解決できるのかを知りたいのであれば。

あなたの python3 コマンドは、おそらくHomebrewのPythonから(確認できます。 ls -l /usr/local/bin/python3 にある何かへのシンボリックリンクであるかどうかを確認します。 /usr/local/Cellar/python ).

あなたの pip3 コマンドは、存在しない Python 3 のものです。おそらく、別の Python 3 をインストールして pip3 をアンインストールした後、Homebrew Python 3 をアンインストールすると、壊れた pip が残っています。

一番シンプルなのは、ただ rm /usr/local/bin/pip3 . そして、Homebrew Python をデフォルトにするために python3pip3 を、やり直す。 brew link python コマンドを実行します。もし、警告やエラーが表示されるようなら、まだ他に修正すべき点があるはずです。そうでない場合は /usr/local/bin/pip3 は、現在Homebrew 3.6 の pipwhich pip3 を選び出す必要があります。 /usr/local/bin/pip3 そして、次に別のPython 3をインストールし、たくさんのものを上書きするまで、すべてがうまくいきます。

より良い解決策は、Anaconda、Homebrew、python.org インストーラなど、Python をインストールする方法をひとつ選び、それを一貫して使用することです。すべてのものをアンインストールして、本当に必要なものを再インストールし、他のものには二度と触れないようにするのです。(残念ながら、Apple のシステム Python 2.7 からは抜け出せませんが、3.x しか使っていないのであれば、それは問題ではありません)。