みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

Pythonのvenvまとめ

自分用のvenvまとめです.

環境

% sw_vers
ProductName:    Mac OS X
ProductVersion: 10.15.7

% python3 --version
Python 3.9.7

venvの初期化

venvはpythonに最初から入っているので,すぐに使える. プロジェクトのディレクトリに移動して,以下のコマンドを実行する.

% python3 -m venv venv

新規に./venvが作成され,./venv/bin/pip3, ./venv/bin/python3, ./venv/bin/activateなど必要なファイルが作られる.

venv環境に入る

.コマンドでactivate シェルスクリプトを実行する.ターミナルの入力時に(venv)と表示され,venv環境に入れたことが分かる.

% . venv/bin/activate
(venv) %

pipでインストールする

例えばrequestsをインストールするには以下のコマンドを実行する.

(venv) % pip3 install requests
...
Successfully installed certifi-2021.5.30 charset-normalizer-2.0.6 idna-3.2 requests-2.26.0 urllib3-1.26.7
% python3
Python 3.9.7 (v3.9.7:...) 
>>> import requests
>>> requests.get("http://example.com")
<Response [200]>

venv環境を出る

deactivate

例えば先程インストールしたrequestsをインポートするとエラーとなる.

>>> import requests
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'requests'

venv環境を破棄する

プロジェクトに作成した./venvを削除すればよい.

% rm -rf venv

venv環境に入らずにpipでインストールしちゃったのを元に戻す

単純に,freezeで書き出したものを一括アンイストールすればよい.

% pip3 freeze > p.txt
% sudo pip3 uninstall -r p.txt 

ひとまずこれぐらいの操作ができれば,venvで快適なpython環境を楽しめそうだ.