Python仮想環境(venv)

なぜ仮想環境が必要?

Pythonプロジェクトごとにパッケージを分離する仕組みです。これがないと:

仮想環境 = プロジェクト専用の「箱」。箱の中だけでパッケージが有効になります。

基本コマンド一覧

操作コマンド
仮想環境の作成python -m venv .venv
有効化(WSL/Linux)source .venv/bin/activate
有効化(Windows CMD).venv\Scripts\activate.bat
有効化(Windows PS).venv\Scripts\Activate.ps1
無効化deactivate
パッケージインストールpip install パッケージ名
インストール一覧pip list
一覧をファイル出力pip freeze > requirements.txt
ファイルから一括インストールpip install -r requirements.txt
仮想環境の削除rm -rf .venv

作成から有効化まで

ステップ1: プロジェクトフォルダに移動

cd ~/projects/my-app

ステップ2: 仮想環境を作成

python -m venv .venv

.venvフォルダが作られます(名前は自由だが .venv が一般的)

ステップ3: 有効化(WSL/Linux)

source .venv/bin/activate

プロンプトの先頭に (.venv) が付いたら成功!

ステップ4: パッケージをインストール

pip install requests fastapi uvicorn

requirements.txt の使い方

プロジェクトで使っているパッケージを記録するファイルです。他のPCでも同じ環境を再現できます。

現在の環境を保存

pip freeze > requirements.txt

生成されるファイルの中身の例:

requests==2.31.0
fastapi==0.104.1
uvicorn==0.24.0
pydantic==2.5.2

新しい環境で復元

pip install -r requirements.txt
必ず requirements.txt はGitで管理しましょう。.venvフォルダは .gitignore に入れます。

実践ワークフロー例

新プロジェクト「my-scraper」を始める流れ:

# 1. プロジェクト作成
mkdir ~/projects/my-scraper && cd ~/projects/my-scraper
git init

# 2. 仮想環境作成 & 有効化
python -m venv .venv
source .venv/bin/activate

# 3. 必要なパッケージをインストール
pip install requests beautifulsoup4

# 4. requirements.txt に記録
pip freeze > requirements.txt

# 5. .gitignore に .venv を追加
echo ".venv/" >> .gitignore

# 6. コードを書いてコミット
git add . && git commit -m "init"

# 7. 作業終了時
deactivate

よくある間違い

間違い正しい方法
仮想環境を有効化せずに pip install必ず source .venv/bin/activate を先に実行
.venv をGitにコミット.gitignore に .venv/ を追加
pip install しても requirements.txt を更新しない毎回 pip freeze > requirements.txt
Python 2 の virtualenv を使うPython 3 では標準の venv を使う
グローバルにインストールしたつもりプロンプトに (.venv) があるか確認
どのPythonを使っているか確認:which python(.venv内を指していればOK)

仮想環境の削除

不要になった仮想環境はフォルダごと削除するだけです。

まず無効化

deactivate

フォルダごと削除

rm -rf .venv
requirements.txt があればいつでも python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt で復元できます。
← ガイド一覧に戻る