![見出し画像](https://assets.st-note.com/production/uploads/images/93163941/rectangle_large_type_2_560d9d530ac48ed892e692e93874882c.jpeg?width=1200)
WindowsでPythonの仮想環境の設定 with VScode メモ
もともとAnacondaを入れてたんだけど、もうちょっとシンプルにしたいと思ってpyenvとvenvでPythonの環境の管理をしたいと思った。
移行するのにてこずったのでメモ。
VScodeの設定まで行ったのでそこまで書く。
AnacondaのPath設定は消そう
ユーザーごとの環境変数PathからはAnacondaの設定はすぐ消したのだけど、システム側にもAnacondaのPathを設定していたのでそちらも消さなければならなかった。
Windowsではpyenvはpyenv for Windowsを使う
windowsでは通常のpyenvは使えないのでpyenv for Windowsを使おう。インストールはGithubでREADMEのリンクをたどっていけばわかるが一応ここに乗せる。
Powershellを起動して
Invoke-WebRequest -UseBasicParsing -Uri "<https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1>" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"
UnauthorizedAccess errorが出たら
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
このスクリプトでセキュリティを解除できるので、再度インストールスクリプトを実行する。
インストールで来たらshellを再起動する。
次に環境変数を設定する。
[System.Environment]::SetEnvironmentVariable('PYENV',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
[System.Environment]::SetEnvironmentVariable('PYENV_ROOT',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
[System.Environment]::SetEnvironmentVariable('PYENV_HOME',$env:USERPROFILE + "\.pyenv\pyenv-win\","User")
コマンドにもPathを通す。
[System.Environment]::SetEnvironmentVariable('path', $env:USERPROFILE + "\.pyenv\pyenv-win\bin;" + $env:USERPROFILE + "\.pyenv\pyenv-win\shims;" + [System.Environment]::GetEnvironmentVariable('path', "User"),"User")
Windows 10 1905以降のバージョンを使ってる場合、Pythonインストーラーのアプリ実行エイリアスを無効化する必要があるかもしれない。
windowsスタートメニュー→設定→アプリ→アプリ実行エイリアス→python.exe,python3.exeのアプリインストーラーをオフにする。
以下を実行してバージョンが出れば問題ない。
pyenv —version
VScodeの設定
venvで仮想環境を作ったら起動時にターミナルで自動的にアクティベイトしてくれるように設定する。
まずVScodeを開いてFile→Preferencesを開く。上部に検索バーがあるのでpythonを検索。
Conda Pathを設定している場合は消去する。
次にpython envで検索。検索結果にTerminal:Active Enviromentという項目があるのでTrueにする。
そして実際の作業フォルダでvenvで仮想環境を作ったら、envフォルダがあるフォルダと同じ階層でF1キーを押してコマンドパレットを起動し、settingsで絞ってopen workspace setting(JSON)コマンドを実行してsettings.jsonファイルを作る。ファイル内に
{
"python.defaultInterpreterPath": "env\\Scripts\\python.exe"
}
と書く。
以上でVScodeで作業フォルダを開いた場合にvenvで作った環境をアクティブにしてくれる設定は完了だ。
この記事が気に入ったらサポートをしてみませんか?