# 環境構築+共有(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 ``` - 仮想環境を有効化すると以下のような画面になる ![有効化後](Images/00_venv_activate.png) ```{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 ```