はじめに
ローカルでAI関連のスクリプトを動かすためにPython環境を整えていたところ、 ある日突然 pip がまったく動かなくなる トラブルに遭遇しました。
普段は問題なく使えていたのに、急に以下のエラーが出るように。
コード
pip is not recognized as an internal or external command
Python自体は動くのに、pipだけが死んでいる状態。 原因が複数ありそうで、調査に2時間ほどかかったので記事化します。
発生した症状
コマンドプロンプトで pip を実行すると以下の状態。
- pip が「認識されない」扱いになる
- python コマンドは正常に動作
- 仮想環境 venv 内でも pip が消えている
特に「python は動くのに pip が死んでいる」という状況は厄介で、 PATHの問題なのか、pip自体が破損しているのか判断が難しい状態でした。
実際に行った調査手順
① Python の場所を確認
まずは Python の実体がどこにあるか確認。
コード
where python
結果は以下の通り。
- C:\Users\xxx\AppData\Local\Programs\Python\Python312\python.exe
- C:\Windows\py.exe
複数のPythonが存在している状態。 この時点で「PATH競合の可能性が高い」と判断。
② pip の場所を確認
続いて pip の実体を確認。
コード
where pip
結果はまさかの 「見つかりません」。
Pythonはあるのに pip が見つからないということは、 pip のパスが消えているか、pip自体が破損している可能性が高い。
③ pip を再インストール
Pythonには pip を再インストールする公式コマンドがあるので実行。
コード
python -m ensurepip --upgrade
すると pip が復活。
コード
Successfully installed pip-24.x.x
この時点で pip が使えるようになった…と思いきや、 まだコマンドプロンプトで pip が認識されない状態。
④ PATH を確認したら競合が発覚
環境変数 PATH を確認したところ、以下の問題を発見。
- 古い Python 3.9 の PATH が残っている
- 新しい Python 3.12 の PATH が後ろにある
- Scripts フォルダの PATH が消えている
具体的には以下の2つが欠けていました。
- C:\Users\xxx\AppData\Local\Programs\Python\Python312\
- C:\Users\xxx\AppData\Local\Programs\Python\Python312\Scripts\
Scripts が消えていると pip が認識されないため、 これが今回のトラブルの根本原因でした。
⑤ PATH を修正して復旧
環境変数 PATH に以下を追加。
コード
C:\Users\xxx\AppData\Local\Programs\Python\Python312\
C:\Users\xxx\AppData\Local\Programs\Python\Python312\Scripts\
コマンドプロンプトを再起動して pip を実行すると…
pip が復活した。
なぜPATHが壊れたのか?
調べたところ、以下の可能性が高いです。
- Pythonを複数バージョンインストールした
- 古いPythonをアンインストールした時にPATHが消えた
- Windows Updateで環境変数がリセットされた
特に複数バージョンのPythonを入れていると、 PATHが競合してトラブルが起きやすいと感じました。
同じ症状が出た時にまず確認すべきこと
以下の3つをチェックすれば、ほとんどのケースで原因が特定できます。
- where python で複数バージョンがないか確認
- pip の実体が存在するか確認
- PATH に Scripts が入っているか確認
pipが突然死ぬトラブルは、ほぼPATHが原因です。
まとめ:pipが動かない時はPATHを疑うべき
今回のトラブルで学んだのは、 pipのエラーの7割はPATH競合が原因 ということ。
pipを再インストールしても直らない場合は、 環境変数を確認するのが最短ルートです。



コメント