😽

venvによるPython仮想環境の作成

に公開

本記事の概要

本記事では、Windows環境におけるvenvを使用したPythonの仮想環境の作成から削除までの一連の手順を解説します。具体的には、venvによる仮想環境の作成、環境の有効化(activate)、パッケージの一括インストール、Visual Studio Codeでの開発環境設定、環境の無効化(deactivate)、そして安全な仮想環境の削除方法までを説明します。

前提とする環境

本記事において前提としている環境を次に示します。

  • OS: Windows 11
    • バージョン: 23H2
    • 64ビットオペレーティングシステム、x64ベースプロセッサ
  • Visual Studio Code: 1.95.3

仮想環境の作成とactivate~deactivate

仮想環境の作成とactivate~deactivateまでの手順を説明します。
まず、VSCodeのターミナルを起動して、次のコマンドを順番に実行し、仮想環境を作成します。

# 仮想環境を作成するディレクトリに移動する(パスは自身の環境に合わせる)
cd C:\Users\username\Projects\my-project

# 仮想環境を作成する
py -m venv .venv

次に、仮想環境の有効化のためにactivateを実行します。このactivateの実行により、自動的に環境変数PATHが変更されます。

# 仮想環境の有効化
.venv\Scripts\activate

パッケージの一括インストールの準備としてrequirements.txtを作成します。
今回は例として次のような構成とします。

requirements.txt
numpy==1.26.3
pandas==2.1.3
matplotlib==3.8.1

作成したrequirements.txtをプロジェクトディレクトリ直下に配置します。
配置が完了したらrequirements.txtのパッケージを一括インストールします。
ターミナル上で次のコマンドを実行します。

# パッケージを一括インストール
py -m pip install -r requirements.txt

# 指定通りインストールされていることを確認
pip list

VSCode上でコーディング等の作業を行います。
今回は例として以下のsample_plot.pyを作成します。

sample_plot.py
import matplotlib.pyplot as plt
import numpy as np

# データの生成
x = np.linspace(-5, 5, 100)
y1 = np.sin(x)
y2 = np.sin(2 * x)

# プロットの作成
plt.figure(figsize=(6, 4))
plt.plot(x, y1, label="Sin(x)", color="lightblue")
plt.plot(x, y2, label="Sin(2x)", color="lightgreen")

# グラフの設定
plt.title("Sine Wave Plot")
plt.xlabel("x")
plt.ylabel("y")
plt.grid(True, axis="x")
plt.legend(loc="upper right")

# グラフの表示
plt.show()

作業が完了したら、次のコマンドを実行します。

python sample_plot.py

正常に実行されるとグラフが表示されます。
sine_wave_plot

作業中にパッケージの追加インストールが必要になった場合は次のコマンドを実行します。

# 例としてseabornをインストールする
pip install seaborn

# requirements.txtを更新する
py -m pip freeze > requirements.txt

作業が完了したら、最後にターミナル上でdeactivateを実行します。

deactivate

作成した仮想環境の削除

仮想環境の削除は、単純にディレクトリを削除するだけでできますが安全を考慮して以下の手順を踏むことが推奨されます。まず、削除対称の仮想環境が有効化されている場合はdeactivateコマンドで無効化し、使用中の環境を誤って削除することを防ぎます。その後、rmdirコマンドでディレクトリを削除します。

deactivate
rmdir .venv

まとめ

本記事では、venvを使用した仮想環境の作成、requirements.txtによるパッケージの一括インストール、Visual Studio Codeでの開発環境設定、安全な仮想環境の削除までの一連の流れを解説しました。これらの手順を理解することで、プロジェクトごとに独立した開発環境を管理することができます。

参考記事

https://zenn.dev/os1ma/articles/935f6e653f1052
https://packaging.python.org/ja/latest/guides/installing-using-pip-and-virtual-environments/

Discussion