記事一覧へ戻る 本の順番で続きを読む

パッケージ管理と仮想環境 - プロジェクト管理の基本

Python3中級 | 2026/02/18 15:44

パッケージ管理と仮想環境

仮想環境(venv)

仮想環境はプロジェクトごとに独立したPython環境を作る仕組みです。

# 作成
python3 -m venv venv

# 有効化
source venv/bin/activate      # Linux/Mac
venv\Scripts\activate          # Windows

# 無効化
deactivate

# 確認
which python   # venv/bin/python が表示される
pip list       # インストール済みパッケージ

pip の使い方

# インストール
pip install requests
pip install django==4.2.0      # バージョン指定
pip install 'django>=4.0,<5.0' # 範囲指定

# アップグレード
pip install --upgrade requests

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

# 情報表示
pip show requests

# requirements.txtの管理
pip freeze > requirements.txt
pip install -r requirements.txt

プロジェクト構成

my_project/
├── src/
   └── my_package/
       ├── __init__.py
       ├── core.py
       └── utils.py
├── tests/
   ├── __init__.py
   ├── test_core.py
   └── test_utils.py
├── requirements.txt
├── pyproject.toml
├── README.md
└── .gitignore

pyproject.toml

[project]
name = "my-package"
version = "0.1.0"
description = "プロジェクトの説明"
requires-python = ">=3.10"

dependencies = [
    "requests>=2.28",
    "click>=8.0",
]

[project.optional-dependencies]
dev = [
    "pytest>=7.0",
    "black",
    "flake8",
]

init.py の役割

# my_package/__init__.py
from .core import MyClass
from .utils import helper_function

__version__ = '0.1.0'
__all__ = ['MyClass', 'helper_function']

.gitignore(Python用)

# 仮想環境
venv/
.venv/

# キャッシュ
__pycache__/
*.pyc
.pytest_cache/

# IDE
.vscode/
.idea/

# 環境変数
.env

まとめ

  • プロジェクトごとに仮想環境を作る
  • requirements.txt で依存パッケージを管理
  • pyproject.toml がモダンなプロジェクト設定
  • __init__.py でパッケージの公開APIを定義
  • .gitignore で不要ファイルをバージョン管理から除外