問題
sh
$ python global 3.10.0
でpythonのバージョン変更を試みたが出来なかった。
解決策
PowerShellのプロファイルファイルを開き、環境変数を設定。
- Powershellのプロファイルを開く
sh
code $PROFILE
以下の環境変数を設定
sh
$ env:PYENV = "$HOME\.pyenv\pyenv-win"
$ env:PATH = "$env:PYENV\bin;$env:PYENV\shims;$env:PATH"
上記のコードは、Windows PowerShell で pyenv を動作させるための環境変数を設定するもの。それぞれの役割を以下に説明。
$env:PYENV = "$HOME\.pyenv\pyenv-win"
1. $env:PYENV
- PowerShell の環境変数 PYENV を設定
- ここでは、pyenv のインストールディレクトリを指す
まずは下記のコードについて説明
sh
"$HOME\.pyenv\pyenv-win"
$HOME
は、ユーザーのホームディレクトリ(例: C:\Users\Shin)を指します。
結果として、この設定は以下のようになります(例の場合): C:\Users\Shin.pyenv\pyenv-win
この環境変数を設定することで、pyenv がインストールされている場所を PowerShell が認識できるようになります。
$env:PATH = "$env:PYENV\bin;$env:PYENV\shims;$env:PATH"
1. $env:PATH
- システムの PATH 環境変数を表す
- PATH に追加されたディレクトリは、コマンドラインで直接アクセスできる実行可能ファイルを探すために使われるす
2. $ env:PYENV\bin
- これは pyenv の実行ファイルが格納されているディレクトリを指定しています。
- 例: C:\Users\Shin.pyenv\pyenv-win\bin
3. $env:PYENV\shims
-
pyenv
が切り替えた Python バージョンに対応する仮想的な実行ファイルが格納されています。 - これにより、
pyenv
を使用して異なる Python バージョンを切り替えた場合でも、python コマンドが常に適切なバージョンを呼び出します。
4. $env:PATH
- 最後に元々の PATH 環境変数を追加することで、既存の設定を保持
- この設定により、pyenv を通じてインストールした Python バージョンをシームレスに利用
全体的な動作
この設定により:
- pyenv コマンドが正しく動作
-
pyenv global
などで設定した Python バージョンを反映 - 他のアプリケーションやコマンドラインから適切な Python バージョンが呼び出されるように