cmdでpythonコマンドが「Python」とだけ返すときの解決法
本当はQiitaとかに書くべきなのだろうけど,よくわからないのでnoteでメモ書き程度に書く
pythonで"Python"と出る
筆者はdiscord.pyを使ったDiscord bot開発をしようとしていた.
そこで,コマンドプロンプトを使用して仮想環境を構築しようとしていた.
しかしながら,以下のようにPython系のコマンドがほとんど意味をなしていなかった.
> python -m venv .venv
Python
> python --version
Python
このような例はYahoo!知恵袋に多数投稿があったので,その解決法をいくつか試したが(①②③),どれも効果がなかった.
(他にもブログ記事など(ex.)があったが,それでも効果がなかった.)
Python実行ファイルの場所の確認
そこで,
> where python
を実行して,Pythonの実行ファイルがどこにあるかを調べた.
すると2件表示され,
C:\Users\user1\AppData\Local\Microsoft\WindowsApps\python.exe
C:\Users\user2\AppData\Local\Programs\Python\Python312\python.exe
のようになっていた.(普段はuser2を使用している.)
とりあえず「複数実行ファイルがあるからよくないのだろう」と,
・コントロール パネル内の「プログラムと機能」
・設定内の「アプリと機能」
から削除できるPythonと名の入った項目を全て削除した.
しかしながら,'where python' を実行しても一番上のuser1にあるファイルは残っていた.
気になったのでエクスプローラーからそのフォルダを覗いてみると,0 kBと書かれた 'python.exe' が置かれていた.それをエクスプローラーの右クリックメニューから削除をしても,エラーを吐いて削除できなかった.
管理者権限で実行したコマンドプロンプトから
> cd C:\Users\user1\AppData\Local\Microsoft\WindowsApps
> del python.exe
と実行して,無理やり削除した.
(同じフォルダ内に 'python3.exe' もあったので一緒に削除した.)
解決
もう一度確認してみると,pythonの実行ファイルはすべて消えたようだ.
> where python
INFO: Could not find files for the given pattern(s).
そこから先は,pythonの最新版を入れ直して解決した.
入れ直す段階で同じような事態になったとしても,web上にある色々な記事で解決できるだろう.
以上,Python素人でした.表現が厳密でないのは許してにゃん
追記: 友人がPythonの環境構築をしたときに同様の事象が発生していた.過去にPythonを入れたことのある人の一部はそういう可能性がありそう.
この記事が気に入ったらサポートをしてみませんか?