Pythonの仮想環境を構築しよう

こんな人に読んでもらいたい

  • Pythonで環境構築を行いたい
  • 仮想環境とは何かを知りたい

仮想環境とは

Pythonの仮想環境は、プロジェクトごとに独立したPythonの実行環境を作成するために利用します。
Pythonには、Python2・Python3があり互換性がなく、同じソースコードが動かない動作しない可能性があります。
そのため、プロジェク単位で仮想環境を構築することで、OSのライブラリやプロジェクト間で干渉せずに独立した環境で開発ができるため、システムを壊すリスクが減ります。

仮想環境の構築手順

実行環境

本書では、以下の環境で開発環境を構築しています。

  • MacBook Air M1, 2020
  • macOS Sonoma Ver.14.5
  • Python Ver.3.10.5

Pythonのインストール

MacOSの場合は、通常Pythonがインストールされていますが、ターミナルで以下のコマンドを使ってバージョンを確認することができます。
もしインストールされていない場合は、Python公式サイトからインストールできます。

python3 --version

プロジェクト用のフォルダを作成

仮想環境を作成するディレクトリを作成します。例えば、「my_project」というフォルダを作成します。

mkdir my_project
cd my_project

本書で構築する仮想環境の全体像は以下のディレクトリ構成になります。

my_project/
├── env
└── requirements.txt

仮想環境を作成

venvを使って仮想環境を作成します。venvはPythonのバージョン3.3以降で標準搭載された仮想環境を作成する機能になります。
ここでは「env」という名前で仮想環境を作成しますが、名前は任意で構いません。
以下のコマンドを利用した場合、OSにインストールされているバージョンの仮想環境が作成されます。

python3 -m venv env

Pythonのバージョンを指定して仮想環境を作成する場合は以下のコマンドを実行します。
「3.10」の箇所へバージョンを指定することで、指定したバージョンの仮想環境を作成することができます。
ただし、OSにインストールされているバージョンである必要があります。

python3.10 -m venv env

仮想環境を有効化

仮想環境を有効にすると、その環境内でPythonやパッケージを操作することができます。
有効化されると、ターミナルのプロンプトが(env)と表示されます。

・MacOS/Linuxの場合

source env/bin/activate

・Windowsの場合

.\myenv\Scripts\activate

パッケージのインストール

仮想環境が有効化された状態で、必要なパッケージをインストールします。
例えば、requestsというライブラリをインストールする場合は以下のようにします。

pip install requests

仮想環境の無効化

作業が終わったら、仮想環境を無効化して元の環境に戻ります。

deactivate

仮想環境の削除

仮想環境を削除したい場合は、envフォルダを削除するだけです。
これはプロジェクトごとに作成されるフォルダなので、システム全体には影響しません。

rm -rf env

パッケージの一覧管理

仮想環境の依存関係を管理するために、requirements.txtというファイルを使うことができます。
仮想環境内で使用しているパッケージをリスト化して共有し、別の環境でも同じパッケージをインストールできます。

pip freeze > requirements.txt

他の人がこのファイルを使って、同じ仮想環境を再現するには以下のコマンドを使用します。

pip install -r requirements.txt
¥3,300 (2024/10/14 22:33時点 | Amazon調べ)