
Pythonで開発を始めるときに、よく目にするコマンドのひとつがpython3 -m venv .venv
です。
特に最近のPythonプロジェクトでは、ほぼ必ず使われる基本コマンドですが、「これって何をしているの?」「なぜ必要なの?」と疑問に思う方も多いはずです。
この記事では、python3 -m venv .venv
の意味や動作、使う理由、そして実際の使い方までなるべくわかりやすく解説します。
python3 -m venv .venv とは?
このコマンドは、「Pythonの仮想環境(virtual environment)」を作るためのものです。
つまり、「このフォルダ専用のPython環境」を作る命令です。
構文は以下のようになっています:
1 2 |
python3 -m venv .venv |
分解してみると:
部分 | 意味 |
---|---|
python3 |
Pythonの実行コマンド。MacやLinuxでは通常この形(Windowsではpython の場合も)。 |
-m venv |
Pythonに組み込まれている venv モジュールを使うという指定。 |
.venv |
仮想環境を作るフォルダ名(ここでは .venv という名前で作る)。 |
つまり、「Pythonに標準で用意されている venv
という仕組みを使って、 .venv
というフォルダに仮想環境を作る」という意味です。
仮想環境とは?
仮想環境とは、プロジェクトごとに独立したPython環境を作る仕組みです。
Pythonではライブラリ(外部モジュール)を pip install
でインストールしますが、
グローバル(全体)にインストールすると他のプロジェクトと混ざってしまうことがあります。
たとえば:
- プロジェクトAでは「Django 3.2」を使いたい
- プロジェクトBでは「Django 4.0」を使いたい
このような場合、同じPCに複数バージョンのDjangoを同時に入れると競合が起こります。
それを防ぐために、プロジェクトごとに分けた環境(=仮想環境)を作るのです。
python3 -m venv .venv
は、そのための「独立したPython空間」を作るコマンドです。
.venv フォルダに何が作られるの?
コマンドを実行すると、プロジェクトフォルダに .venv
という隠しフォルダが作られます。
中には以下のような内容が入ります:
1 2 3 4 5 |
.venv/ ├─ bin/(または Scripts/) ← Python実行ファイルやpipが入っている ├─ lib/ ← ライブラリが入る場所 └─ pyvenv.cfg ← 環境設定ファイル |
この .venv
の中には、システムのPythonとは別のコピー(リンク)が作られ、
pipでインストールしたライブラリもすべてこの中に保存されます。
つまり、このフォルダを使えば「他のプロジェクトに影響を与えないPython環境」が完成します。
仮想環境を有効化する(activate)
作成しただけでは仮想環境はまだ「無効(オフ)」です。
使う前に「有効化」する必要があります。
macOS / Linux の場合:
1 2 |
source .venv/bin/activate |
Windows の場合:
1 2 |
.venv\Scripts\activate |
(venv)
のような表示が付きます。
1 2 |
(venv) user@MacBook project % |
この状態で pip install
を使うと、インストールされるライブラリは .venv
内に保存されます。
例:仮想環境を使ってライブラリをインストールする
実際に試してみましょう。
1 2 3 4 |
python3 -m venv .venv source .venv/bin/activate # 仮想環境を有効化 pip install requests # ライブラリをインストール |
この状態で pip list
を見ると:
1 2 3 4 5 |
Package Version ---------- ------- pip 24.2 requests 2.32.3 |
このように、requests
が .venv
内にだけインストールされています。
仮想環境を抜けると、グローバル環境には影響しません。
仮想環境を終了するには:
1 2 |
deactivate |
これで元の環境(グローバルPython)に戻ります。
.venv という名前の由来と慣習
仮想環境のフォルダ名は実は自由です。
たとえば:
1 2 |
python3 -m venv myenv |
としても問題ありません。
ただし、最近は .venv
という名前が広く使われています。
理由は:
- ドットで始まるので隠しフォルダ扱いになり、邪魔にならない
- VSCodeなど多くのエディタが自動で
.venv
を検出して使ってくれる
という利点があるためです。
まとめ
python3 -m venv .venv
は、Pythonの開発では欠かせない「仮想環境」を作るための基本コマンドです。
python3
:Pythonを実行する-m venv
:仮想環境作成モジュールを使う.venv
:仮想環境を作るフォルダ名
作成後は source .venv/bin/activate
(または .venv\Scripts\activate
)で有効化し、その中でライブラリをインストールしていきます。
仮想環境を使うことで、プロジェクトごとに独立したPython環境を安全に管理できるようになります。
Python開発の第一歩として、まずこのコマンドの意味をしっかり理解しておきましょう!