忘れそうなためPythonの仮想環境を準備するときの備忘録。
使用する仮想環境はvenv。
VSCodeについては管理者権限で起動。
前提条件
Python 3.10
Visual Studio Code 1.63.2
仮想環境作成
プロジェクトを作りたい場所にディレクトリを作成。
(※今回はCドライブにグローバル環境のPythonが格納されていてプロジェクトはEドライブに格納されている。)
VSCodeのメニューバーのファイル→フォルダを開くでプロジェクトを選択する。
メニューのターミナル→新しいターミナルを選択。プロジェクト直下で次のコマンドを実行すると仮想環境が作成される。
$ python -m venv venv01
memo
-m モジュールであることを示す。
venv01の部分は環境名のため任意の文字列を入力。
次のような構成になっていれば成功。
仮想環境は作成されていますがまだ有効にはなっていないため有効化する。
プロジェクト直下に適当な拡張子が.pyのファイルを作成。
作成したファイルを開いた後ターミナルも再度開き直す。
ウィンドウ左下にPythonのバージョンと使用している仮想環境が表示されている。
ターミナルのコマンド入力先頭部分に環境名となっており仮想環境有効状態でコマンドが実行可能な状態になっていることが確認できる。
また、次のようなコマンドを直接入力しActivate.ps1を直接指定することでも仮想環境を有効化できる。
PS E:\dorayaki> venv01/Scripts/Activate.ps1
(venv01) PS E:\dorayaki>
スクリプトの実行が無効となっていてActivate.ps1を読み込めない場合はPowerShellにて次のコマンドを実行する。2回目以降の実行は不要。
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
仮想環境を無効化する場合はdeactivateと入力すればよい。
(venv01) PS E:\dorayaki> deactivate
PS E:\dorayaki>
##pipを最新化
listコマンドを実行するとターミナルに次のように表示される場合がある。
(venv01) PS E:\dorayaki> pip list
Package Version
---------- -------
pip 21.2.4
setuptools 58.1.0
WARNING: You are using pip version 21.2.4; however, version 22.0.2 is available.
You should consider upgrading via the 'E:\dorayaki\venv01\Scripts\python.exe -m pip install --upgrade pip' command.
より新しいバージョンのpipが存在するとのこと。pipのバージョンによっては一部のモジュールが取得出来ない場合がある。
pipを最新にするには次のコマンドを実行する。
(venv01) PS E:\dorayaki> python -m pip install --upgrade pip
Requirement already satisfied: pip in e:\dorayaki\venv01\lib\site-packages (21.2.4)
Collecting pip
Downloading pip-22.0.2-py3-none-any.whl (2.1 MB)
|████████████████████████████████| 2.1 MB 6.4 MB/s
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 21.2.4
Uninstalling pip-21.2.4:
Successfully uninstalled pip-21.2.4
Successfully installed pip-22.0.2
正常に最新のpipにアップグレードされた。
memo
python -m を先頭につけないと失敗する場合がある。
補足
どのモジュールを使用しているか次のようにwhichコマンドで確認できる。
グローバル環境
PS E:\dorayaki> which pip
/c/Users/hoge/AppData/Local/Programs/Python/Python310/Scripts/pip
PS E:\dorayaki> pip --version
pip 21.2.4 from C:\Users\hoge\AppData\Local\Programs\Python\Python310\lib\site-packages\pip
(python 3.10)
仮想環境
(venv01) PS E:\dorayaki> which pip
/e/dorayaki/venv01/Scripts/pip
(venv01) PS E:\dorayaki> pip --version
pip 22.0.2 from E:\dorayaki\venv01\lib\site-packages\pip (python 3.10)
このように異なるバージョンのpipが適用されていることが確認できる。