できない.dev

python コマンドが「command not found」で実行できない

多くの環境で実体は python3 のみで python が無い、PATH が通っていない、Windows ではストアのエイリアスが横取りする、が主因。
python3 で呼ぶか PATH を通すのが基本対応。

公開: 更新:

要約

python: command not found(Windows では 'python' は、内部コマンド...として認識されていません)は、python という名前の実行ファイルが PATH 上に無い だけのことが多い。
近年の Linux / macOS は python3 しか持たず、Windows ではインストール時に PATH を通し忘れているか、ストアのエイリアスが横取りしている。
まず python3 で動くかを確認する。

よくある原因

  1. python3 のみ存在: 近年の OS は python を用意せず python3 だけがある
  2. PATH 未設定: インストールはされたが bin / Scripts ディレクトリが PATH に無い
  3. Windows のエイリアス: 「アプリ実行エイリアス」の python.exe が有効で、Microsoft Store を開くだけになる
  4. shims / venv の不整合: pyenv の shims が PATH 前段に無い、venv を activate していない

解決策

1. 実体を確認する

python3 --version
which python3      # Windows: where python

python3 が動くならエイリアスを作るか、python3 を使えばよい。
実行コマンドの詳細は Python 公式の利用ガイド(新しいタブで開く) を参照。

2. PATH を通す

# 例: ~/.local/bin に入っている場合
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

インストーラの「Add Python to PATH」を入れ忘れた Windows は、再インストール時にそのチェックを入れるのが確実。

3. Windows のエイリアスを無効化

設定 ->「アプリ」->「アプリ実行エイリアス」で python.exe / python3.exe をオフ にする。
これが有効だと PATH に Python があってもストアが開くだけで実行されない。
挙動の説明は Python 公式の Windows ガイド(新しいタブで開く) にある。

4. ランチャーやバージョン管理を使う

py -3.12 --version

Windows の py ランチャーは複数バージョンを明示的に呼び分けられる。
Linux/macOS で複数バージョンを使うなら pyenvpyenv global 3.12 のように固定し、shims が PATH 先頭に来ているか確認する。

実行例

実際に上記の手順を python:3.12(Debian GNU/Linux 13 trixie)環境で動かすと、PATH から /usr/local/bin を除いた状態で python を呼び出したときに終了コード 127 の command not found が再現し、同ディレクトリを PATH に戻すことで終了コード 0 で正常実行できることが確認できる。

$ command -v python
/usr/local/bin/python
$ command -v python3
/usr/local/bin/python3
$ python3 --version
Python 3.12.13
python3 のあるディレクトリ: /usr/local/bin
細らせた PATH: /usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin
$ python --version
bash: line 1: python: command not found
終了コード: 127(127 = コマンドが見つからない)
$ command -v python && python --version
/usr/local/bin/python
Python 3.12.13
終了コード: 0
$ python3 --version
Python 3.13.5
終了コード: 0(python3 も PATH 外なら 127。実体の場所を確認するのが先)
$ command -v python && python --version
/tmp/tmp.NbBuOs2vNb/bin/python
Python 3.12.13
終了コード: 0

— 2026-08-02 時点の出力

この記事は役立ちましたか?