✅ はじめに
Pythonのプロジェクト開発では、仮想環境を使うことがとても大切です。
なぜなら、ライブラリのバージョン管理や、他プロジェクトとの干渉を防ぐためです。
本記事では、以下の3つの方法について、初心者でも分かるように丁寧に比較・解説します。
python -m venv
(標準機能)pyenv
(Pythonバージョン管理)pyenv + pyenv-virtualenv
(最強コンビ)
✅ 各方法の特徴を比較
機能 / ツール | venv | pyenv | pyenv + virtualenv |
---|---|---|---|
Pythonバージョン管理 | ❌(外部依存) | ✅ | ✅ |
仮想環境作成 | ✅ | ❌(単体では不可) | ✅ |
バージョンの切り替え | ❌ | ✅ | ✅ |
.python-version 対応 | ❌ | ✅ | ✅ |
VSCodeとの連携 | ◎(簡単) | ○(設定必要) | ○(設定必要) |
✅ 方法①:venv
(Python標準の仮想環境)
特徴
- Pythonに標準搭載されている仮想環境ツール
- 追加インストール不要、すぐ使える
使い方(例)
# 仮想環境を作成
python3 -m venv .venv
# 仮想環境をアクティベート
source .venv/bin/activate
# パッケージをインストール
pip install requests
メリット
- シンプルで簡単
- VSCodeの自動検出にも対応
デメリット
- Pythonのバージョンを切り替える機能はない
- OSやHomebrewに依存しがち
✅ 方法②:pyenv
(Pythonバージョン管理ツール)
特徴
- 複数のPythonバージョンを簡単に管理・切り替えできる
- システムのPythonに依存せず安全
インストール方法(macOS)
brew install pyenv
.zshrc
に追記:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
eval "$(pyenv init -)"
使い方(例)
pyenv install 3.12.3
pyenv global 3.12.3
pyenv local 3.12.3
メリット
- バージョンごとの環境を柔軟に切り替え可能
.python-version
でプロジェクトに紐づけ可能
デメリット
- 仮想環境は別途
venv
などを使う必要あり
✅ 方法③:pyenv + pyenv-virtualenv
(最も強力な構成)
特徴
- Pythonバージョンと仮想環境をセットで管理できる
pyenv
の機能拡張として使える
インストール方法
brew install pyenv pyenv-virtualenv
.zshrc
に追加:
eval "$(pyenv virtualenv-init -)"
使い方(例)
pyenv install 3.12.3
pyenv virtualenv 3.12.3 myenv
pyenv activate myenv
pyenv local myenv
メリット
- 環境管理が自動化されて快適
- 複数プロジェクトを安全に分離できる
.python-version
により自動切り替え可能
デメリット
- 初期設定がやや複雑
.venv
フォルダがプロジェクト内にできない(VSCode設定で対応可能)
✅ まとめ:どれを選ぶべき?
あなたの状況 | おすすめ |
---|---|
はじめて仮想環境を使う | venv ✅ |
複数のPythonバージョンを切り替えたい | pyenv ✅ |
完全に管理された環境を使いたい | pyenv + pyenv-virtualenv ✅ |
✅ おわりに
Pythonの仮想環境は、開発の基盤です。
あなたの開発スタイルに合った方法を選んで、快適なPythonライフを始めましょう!