実践・上級問題チェック

問題 1 /40

pipとvenvの記述で、誤っているものはどれか。

実行環境はUNIX系OSとする。

選択 1

pip freeze > requirement.txt

選択 2

pip install -r requirement.txt

選択 3

pip install -c constrains.txt

選択 4

python -m venv env

解説

選択肢3が正解です。

【選択肢1】
pip freeze > requirement.txt

実行環境にインストールされているパッケージを、テキストファイルにリストアップする際の記述です。パッケージ名とバージョンを合わせてリストアップできます。

requirement.txtの例
-------------------------------
psycopg2-binary==2.9.1
SQLAlchemy==1.4.20
-------------------------------


【選択肢2】
pip install -r requirement.txt

選択肢1で作成したファイルを利用して、実行環境にパッケージをインストールする際の記述です。リストアップしたパッケージを、指定のバージョンで一括でインストールできます。


【選択肢3】
pip install -c constrains.txt

-rオプションを利用してパッケージをインストールする際に、-cオプションを使うとパッケージのバージョンに制限をかけることができます。

requirement.txtにはバージョンを記載せず、constrains.txtにバージョンを記載することで制限します。

-cオプションは「pip install -r requirement.txt -c constrains.txt」のように、-rオプションと合わせて使います。

選択肢3のように-cオプションを単独で使うとエラーになります。

なお、requirement.txtとconstrains.txtのファイル名は、他のファイル名でも問題ありません。重要なのは-rオプションと-cオプションです。


【選択肢4】
python -m venv env

仮想環境を作成する際の記述です。

-mオプションはモジュールを実行する際のオプションで、この場合は「venv」モジュールを実行して、ディレクトリ名「env」の仮想環境を作成しています。


(公式書籍 p.5-7)