WindowsでのPython仮想環境まわりをまとめます。
Pythonのバージョンを指定したvenv構築方法や、アクティベート方法、***.pyファイルをダブルクリックしたときにvenv python で実行する方法等も含め、構築から使用方法までまとめて解説します。
仮想環境構築
Windowsの場合、標準のpythonをインストールしていればPythonランチャーが使えます。
なので、仮想環境を置きたいフォルダに移動し、以下を実行すれば仮想環境を作れます。
// 仮想環境を置きたいフォルダに移動
> cd FOLDER_PATH
// 仮想環境構築
> py -m venv VENV_NAME
複数バージョンのpythonをインストールしてあるPCで、バージョン指定で仮想環境を構築したければ、単純にこうなります。
// python 3.9 で仮想環境構築するなら
> py -3.9 -m venv VENV_NAME
これで、コマンドを実行したフォルダの下に、VENV_NAMEという名前の仮想環境フォルダが出来上がります。
その中に実行ファイル関係諸々が格納されることになります。
仮想環境のアクティベート:シェル編
仮想環境を構築できていれば、フォルダ内にScriptsフォルダができており、その中に実行ファイル関係が格納されます。
Windows Power shell で仮想環境 python を実行するなら、
// 仮想環境をアクティベート(PowerShell)
> PATH_TO\VENV_NAME\Scripts\Activate.ps1
// あるいは
> PATH_TO\VENV_NAME\Scripts\activate
(venv)> python
Python 3.9.13 (tags/v3.9.13:6de2ca5, May 17 2022, 16:36:42) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
// pip も直接実行可能
(venv)> pip install PAKAGE_NAME
// 仮想環境を抜ける
(venv)> deactivate
>
といった形で、仮想環境のpythonを実行することができます。
ちなみに、Activate.ps1 のショートカットを置くなどして、ダブルクリックで仮想環境モードのPowershellを起動するには、
Activate.ps1 ショートカットファイルのプロパティからリンク先を以下のようにする必要があります。
// ショートカットファイルのリンク先
pwsh -NoProfile -ExecutionPolicy RemoteSigned -NoExit -File PATH_TO\VENV_NAME\Scripts\Activate.ps1
- -ExecutionPolicy RemoteSigned
.ps1 ファイルを実行するためのpowershellセキュリティ修正 - -NoExit
powershell 起動後、ウィンドウが閉じてしまうのを防ぐ - -File ***
powershell 起動後、*** スクリプトファイルを実行
.py ファイルをダブルクリックで実行
スクリプトファイル(例: sample.py)をダブルクリックで実行したいときもありますよね。
それを仮想環境のPythonで実行するには、ショートカットを作ることで対応できます。
- sample.py のショートカットファイルをマウス右クリックなどで作成します。
- できあがったショートカットファイルを右クリックして、プロパティを表示させます。
- リンク先を修正して、「VENV\Scripts\python.exe sample.py」 の形式にします。
これによって、「sample.py を引数に取ったvenv python.exe」のショートカットとなり、ダブルクリックすることで実行できるようになります。
// ショートカットのプロパティ:リンク先
PATH_TO\VENV_NAME\Scripts\python.exe PATH_TO\sample.py
ちなみに、コンソールを表示させずにPython実行をする場合、
python.exe ではなく pythonw.exe を置きます。