requirements.txtとは?
requirements.txtは、Pythonで開発したプログラムが動くために必要なライブラリ(外部の追加機能)やそのバージョンをリストとしてまとめたファイルです。これにより、他の人があなたのプログラムを動かす際に、同じ環境を簡単に再現できます。
例えば、あるプログラムを動かすために「特定のライブラリのバージョン」が必要だったとして、その情報をrequirements.txtに記載しておくことで、誰でもその環境を自動で整えることができるというわけです。
どんな時に使うの?
他の人とプロジェクトを共有する時
誰かにプログラムを渡す際、使ったライブラリを一つ一つ口頭で説明するのは手間ですよね。requirements.txtを用意しておけば、そのファイルを渡すだけで相手の環境も自動的に同じにできます。開発環境を再現したい時
別のパソコンやサーバーでプログラムを動かす時、同じ環境を簡単に再現できます。
使い方の手順
1.ライブラリをインストールして作成
開発中にインストールしたライブラリをまとめるには、以下のコマンドを使います。
pip freeze > requirements.txt
これを実行すると、現在の環境でインストールされているライブラリとそのバージョンが自動的にrequirements.txtに書き出されます。
flet==0.3.0 r
equests==2.28.1
numpy==1.23.2
2.ライブラリをインストール
プロジェクトを共有された場合、そのrequirements.txtから必要なライブラリを一括でインストールするには、以下のコマンドを実行します。
pip install -r requirements.txt
これで、ファイルに書かれたライブラリがすべてインストールされ、プログラムを動かす準備が整います。
バージョンの指定方法
1. 特定のバージョンを指定
ライブラリのバージョンを固定する場合、==を使用します。
package_name==1.0.0
例:
flet==0.3.0
2. 特定のバージョン以上を指定
最低バージョンを指定し、それ以上のバージョンを許可する場合は>=を使用します。
package_name>=1.0.0
3. 特定のバージョン未満を指定
特定バージョン未満を指定する場合、<を使用します。
package_name<2.0.0
4. 範囲指定
ある範囲内のバージョンを許可する場合は、複数の条件を組み合わせます。
package_name>=1.0.0,<2.0.0
5. 最新バージョンを指定しない場合
バージョンを指定しない場合、常に最新バージョンがインストールされます。
package_name
これらの方法を組み合わせることで、プロジェクトに最適なバージョン管理ができます。