💻

Windowsにpoetryを導入

2022/06/02に公開

公式サイト通りに進めていたのですが、一部引っかかったのでメモしておきます。

環境

Windows10 Pro
Python 3.10.4

現象

公式サイトに沿って、以下のコマンドを実行しましたが、"Python"と表示されるだけで、何も起きませんでした。

(Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python -

原因

python.exeへのパスが通っていないためでした。
コマンドプロンプトで、where python と実行してみます。
下記のように、WindowsAppsのpythonのみパスが通っている場合は、インストールしたpythonのパスを通す必要があります。

$ where python
C:\Users\UserName\AppData\Local\Microsoft\WindowsApps\python.exe

もしくは、パスの優先度の問題だと考えられます。
参考:Pythonを実行しようとしたらMicrosoftStoreに飛ばされた件

対策

  1. そもそもパスが通っていない
    "環境変数の設定"などから、環境変数Pathに、インストールしたpythonのpython.exeを追加します。
    デフォルトでインストールすると、例えばPython3.10であれば、
    "C:\Users\UserName\AppData\Local\Programs\Python\Python310\python.exe"などかと思います。
    この際、インストールしたpythonのパスの方が上に来るよう、順番も整理しておきます。
    環境変数設定の画面右側に、"上へ"、"下へ"というボタンがあります。これらを用いて優先度を整理します。

    コマンドプロンプトを立ち上げなおし、再度where pythonを実行してみると、無事インストールしたpythonが出現します。
$ where python
C:\Users\UserName\AppData\Local\Programs\Python\Python310\python.exe
C:\Users\UserName\AppData\Local\Microsoft\WindowsApps\python.exe
  1. パスは通っている場合
    上記の優先度操作と同様に、"上へ"、"下へ"というボタンがあります。これらを用いて優先度を整理します。

Discussion