この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:atom
更新日時:2026-06-11 07:07:02

タイトル: Python本体・ライブラリのインストール
SEOタイトル: Python 本体とライブラリのインストール完全ガイド(pip / venv / poetry / conda 使い分け)

この記事の要点
  • Python 本体は公式インストーラー(python.org) またはpyenvで入れる。OS の Python は使わない
  • ライブラリはpip install。プロジェクト毎の依存は requirements.txt で管理
  • プロジェクトごとにpython -m venv venvで仮想環境を作るのが現代の標準
  • pipenv: Pipfile + Pipfile.lock で依存ロック。シンプルだが活発さは落ち気味
  • poetry: pyproject.toml で管理。パッケージ公開・ロックの両方に対応する現代主流
  • conda: 機械学習・科学計算で C 拡張をまとめて入れたい場合に強い

パッケージ管理ツールの全体像

ツール本体管理ライブラリ管理仮想環境用途
pip + venv×標準・シンプル
pipenv×○(Pipfile)○ 自動Web 開発
poetry×○(pyproject.toml)○ 自動ライブラリ公開・ロック厳密
pyenv××複数バージョン併用
condaデータサイエンス
uv(新興)○ 高速2024〜流行の Rust 製

1. pip の基本操作

# 最新バージョンに更新(最初にやる)
python -m pip install --upgrade pip

# パッケージインストール
pip install requests
pip install 'django>=4.2,<5.0'      # バージョン指定
pip install -r requirements.txt     # ファイルから一括

# アンインストール
pip uninstall requests

# 一覧
pip list
pip list --outdated                  # 古いもののみ

# 詳細
pip show requests

# 依存ツリー
pip install pipdeptree
pipdeptree

# 依存関係を requirements.txt として書き出し
pip freeze > requirements.txt

# キャッシュ削除
pip cache purge

2. venv で仮想環境

# プロジェクトディレクトリで
cd ~/projects/myapp

# venv 作成
python -m venv venv

# 有効化(Linux / macOS)
source venv/bin/activate

# 有効化(Windows PowerShell)
.\venv\Scripts\Activate.ps1

# 有効化(Windows コマンドプロンプト)
venv\Scripts\activate.bat

# 確認: プロンプトに (venv) が付く
(venv) $ which python
/home/user/projects/myapp/venv/bin/python

# 無効化
deactivate

# 削除(プロジェクトと一緒に)
rm -rf venv

.gitignoreに venv は必ず追加:

# .gitignore
venv/
.venv/
__pycache__/
*.pyc
.python-version

3. requirements.txt の運用

# requirements.txt - 直接依存だけ書く(推奨)
Django>=4.2,<5.0
djangorestframework>=3.14
mysqlclient>=2.2.0
gunicorn>=21.0
python-dotenv>=1.0

# 開発用は requirements-dev.txt に分離
# -r requirements.txt
# pytest>=7.0
# black>=23.0
# flake8>=6.0
# 開発環境構築
pip install -r requirements.txt
pip install -r requirements-dev.txt

# 厳密ロックが必要なら pip-tools
pip install pip-tools
pip-compile requirements.in        # requirements.txt 生成
pip-sync                            # ロックに合わせて env を完全一致

4. pipenv

pip install --user pipenv

cd ~/projects/myapp

# プロジェクト初期化(Pipfile 生成)
pipenv install django

# 開発用パッケージ
pipenv install --dev pytest black

# 仮想環境で実行
pipenv run python manage.py runserver

# シェル起動
pipenv shell

# Pipfile.lock からインストール
pipenv install --deploy

# 仮想環境の場所
pipenv --venv

5. poetry(モダン主流)

# インストール
curl -sSL https://install.python-poetry.org | python3 -

# 新規プロジェクト
poetry new myapp

# 既存ディレクトリで初期化
cd myapp
poetry init

# 依存追加
poetry add django djangorestframework
poetry add --group dev pytest black

# インストール
poetry install

# 仮想環境で実行
poetry run python manage.py runserver

# シェル起動
poetry shell

# ロックファイルから完全再現
poetry install --sync

# 依存更新
poetry update

# パッケージビルド・公開(PyPI)
poetry build
poetry publish

6. conda(データサイエンス向け)

# Miniconda インストール後
conda create -n myenv python=3.11
conda activate myenv

# C 拡張も含めて conda 一発
conda install numpy pandas scipy scikit-learn matplotlib

# conda にないものは pip
pip install some-pypi-only-package

# 環境エクスポート
conda env export > environment.yml
# 再現
conda env create -f environment.yml

7. uv(高速・Rust 製・2024〜)

# インストール
curl -LsSf https://astral.sh/uv/install.sh | sh

# pip 互換コマンド
uv pip install django
uv pip install -r requirements.txt

# venv 作成(python -m venv より 10〜100 倍高速)
uv venv

# Python 本体管理(pyenv 代替)
uv python install 3.12
uv python list

選び方フローチャート

  • とりあえず動かしたい → pip + venv
  • 自分用 Web アプリ → pip + venv + requirements.txt
  • チーム開発 / ロック厳密 → poetry
  • ライブラリを PyPI 公開 → poetry
  • 機械学習・GPU 系 → conda(CUDA バイナリも一括)
  • CI / Docker の高速化 → uv

FAQ

Q: pip install で root 権限がいる
A: グローバルに入れようとしている。必ず venv 内で実行する。OS の Python を汚すと OS パッケージが壊れる。

Q: pip と pip3 どちらを使う?
A: venv 内なら pip。グローバル状態で曖昧なときは python -m pip が一番安全。

Q: requirements.txt と pyproject.toml の関係
A: PEP 621 で pyproject.toml が標準。新規プロジェクトは poetry / uv で pyproject に統一。レガシーは requirements.txt のまま。