環境構築+共有(pip + venv 使用)

pip + venv 使用した、Python 環境の構築+共有方法を記す。

前提環境

  • Windows 環境

  • python のバージョンは 3.0 以上

  • python ライブラリ

    • pip

pip + venv

  • pip は python 標準のパッケージマネージャ

    • ライブラリの導入・管理に使用する

    • python 標準なので使用しやすい一方で、依存関係の管理が苦手

  • venv は Python の仮想環境

    • プロジェクトごとの環境の競合を防ぐために使用する

概要

  • 仮想環境上での環境構築

    • 仮想環境の作成

    • 仮想環境上へのライブラリ導入

  • 環境の共有・再構築

    • 導入済ライブラリのテキスト化

    • 環境の共有

    • requirements.txt からライブラリのインストール

仮想環境上での環境構築

仮想環境の作成

# コンソール上で実行
# 仮想環境の作成
python -m venv <仮想環境名>
  • 仮想環境名は慣習的に 「venv」 とすることが多い。

  • 仮想環境を作成すると、現在のディレクトリに <仮想環境名> フォルダができる。

Warning

  • 仮想環境といっても、docker のように実行環境が作られるわけではない。

  • 優先的な参照先となるようなフォルダが作成されるイメージ。

Warning

  • 仮想環境のフォルダを作成した後は、ルートの絶対パスを変えてはいけない。

  • 内部に絶対パスが含まれているらしく、途中で変わるとライブラリが読み込めなくなる。

仮想環境上でのライブラリ導入

# 仮想環境の有効化
.\<仮想環境名>\Scripts\activate
  • 仮想環境を有効化すると以下のような画面になる

有効化後

Note

  • startコマンドで上記の有効化をするbatファイルを作っておくとよい。

  • パスの先頭に(venv)がついていることを確認する。

  • この状態でライブラリのインストールや、実行ファイル作成などを行う。

pip install xxxxx

環境の共有・再構築

導入済ライブラリのテキスト化

pip freeze > requirements.txt
  • 上記操作で requirements.txt が生成される。

環境の共有

  • 以下のフォルダは共有しない(git 共有なら gitignore に入れておく)

    • venv(仮想環境)フォルダ

    • build フォルダ

requirements.txt からライブラリのインストール

pip install -r requirements.txt

ライブラリの全消去

誤ってローカルに pip install してしまった時などのリカバー(全消去)方法

pip uninstall -y -r requirements.txt