【Python】第4章第9回:requirements.txtの使い方
本記事では、Pythonプロジェクトでよく使用されるrequirements.txt
ファイルについて解説します。このファイルを活用することで、プロジェクトの依存関係を効率的に管理できるようになります。
0. 記事の概要
この記事を読むメリット
- requirements.txtの基本を理解:ファイルの役割と作成方法を学べます。
- 効率的な依存管理:チーム開発やデプロイ作業がスムーズになります。
- 再現性の向上:同じ環境を簡単に再現できるようになります。
この記事で学べること
- requirements.txtの基本的な役割
- ファイルの作成と使用方法
- 依存関係管理のベストプラクティス
1. requirements.txtとは?
1.1 定義
requirements.txt
は、Pythonプロジェクトが必要とするライブラリとそのバージョン情報を記録したテキストファイルです。
1.2 利用するメリット
- プロジェクトの依存関係を一元管理できる
- 環境の再現性が向上する
- コマンド一つで必要なライブラリをインストール可能
2. requirements.txtの作成と使用方法
2.1 requirements.txtの作成
# 現在の環境のライブラリをrequirements.txtに出力
pip freeze > requirements.txt
動作解説
pip freeze
コマンドで、現在の環境にインストールされているライブラリ一覧を取得します。- 出力結果を
requirements.txt
に保存します。
2.2 requirements.txtの使用
# requirements.txtからライブラリをインストール
pip install -r requirements.txt
動作解説
pip install -r
コマンドを使用すると、ファイル内の全てのライブラリが一括インストールされます。- バージョン情報も反映されるため、環境の再現性が保証されます。
3. 依存関係管理のベストプラクティス
3.1 ライブラリのバージョン固定
requirements.txtには、ライブラリのバージョンを明示的に指定することが推奨されます。例:
# バージョン固定の例
numpy==1.21.0
pandas>=1.3.0
3.2 不要なライブラリの整理
不要なライブラリを含めないように、環境を定期的に見直しましょう。
4. 練習問題
以下の課題に挑戦してみましょう。
- 現在の仮想環境のライブラリを
requirements.txt
に出力してください。 - 別の仮想環境で
requirements.txt
を使用して同じ環境を再現してください。
5. 練習問題の解答と解説
問1の解答例
# requirements.txtの作成
pip freeze > requirements.txt
問2の解答例
# requirements.txtからライブラリをインストール
pip install -r requirements.txt
6. まとめ
requirements.txtを使用することで、プロジェクトの依存関係を効率的に管理できます。練習問題を通じて、ファイルの作成と使用に慣れ、環境の再現性を高めましょう。