1. ホーム
  2. python

[解決済み] pythonと入力するとCMDがウィンドウズ・ストアを開く

2022-04-29 09:30:14

質問

今日、Sublime Text 3で簡単なコードを実行しようとしたところ、以下のようなメッセージが表示されました。

Pythonが見つかりませんでしたが、Microsoft Storeからインストールすることができます。 https://go.microsoft.com/fwlink?linkID=2082640

また、CMDでPythonと入力すると、Windowsストアが開き、Python3.7をダウンロードするよう指示されます。この問題は今日、何の理由もなく始まりました。Pythonについて何かを変更したりダウンロードしたわけでもなく、すでにPythonを再インストールしてみましたが、Pathは正しいのです。

どうすればいいですか?

Windowsの検索バーで、"Manage app execution aliases"を検索してください。pythonのエイリアスが2つあるはずなので、それらをアンセレクトして、通常のpythonのエイリアスである "python" と "python3" を使用できるようにします。下の画像を参照してください。

Windowsの新規インストールでは、下の画像のようにエイリアスがONになっているので、pythonのインストール時にこの問題が発生するのだと思います。オンにすると、Windowsは%USERPROFILE%AppData ###Local ###Microsoft ###WindowsApps というディレクトリに python.exe と python3.exe という空のまたは偽のファイルを配置します。これはエイリアスです。

そして、マイクロソフトはそのディレクトリを"Path"環境変数のリストの一番上に置くのです。

cmd で "python" と入力すると、環境変数 "Path" ページに記載されているディレクトリを上から下へ検索します。つまり、Windows 10 を新規インストールした後に Python をインストールして Windows Store にリダイレクトされた場合、アプリ実行エイリアスページのエイリアスと Python をインストールした場所の本物の 2 つの python.exe が存在するため、cmd はパスが一番上にあるアプリ実行エイリアス python.exe を最初に見つけます。

一番簡単な解決策は、以前提案したようにpython.exeとpython3.exeをOFFにチェックするだけで、偽物のexeが削除されることだと思うのですが。このMicrosoft Devblogに基づきます。 https://devblogs.microsoft.com/python/python-in-the-windows-10-may-2019-update/ このシステムは、Pythonの新規ユーザー、特に学校でPythonを学んでいる子供たちがインストールするのに苦労するために部分的に作ったと述べています。このエイリアスを作成することで、pythonを始めたばかりの子供たちがインストールし、コードを学ぶことに集中できるようにするためです。おそらくWindowsは、Windows App StoreからPythonをインストールすると、これらのエイリアスを削除すると思います。私たちが気づいているのは、他のソースから手動でインストールした場合は削除されないということです。

(また、空の/偽の python.exe は実際には空ではなく、スクリーンショットでは 0 KB と書かれていますが、cmd で "start ms-windows-store:" と入力すると Windows App Store が開くので、おそらくその行と Python ページに誘導する方法が書かれているだけでしょう)。

最後に、Chipjust が提案したように、例えばこの記事で説明されているように、DOSKEY のようなものを使って python の新しいエイリアスを作成することができます。 https://winaero.com/how-to-set-aliases-for-the-command-prompt-in-windows/