(初心者向け)WindowsでPythonの仮想環境の構築

ChatGPTで何回も聞くのも面倒なのでメモ用として書きました。


## はじめに

Pythonの仮想環境は、Pythonアプリケーションを開発するための非常に便利なツールです。 仮想環境を使用することで、Pythonの異なるバージョンやライブラリのバージョンを分離して管理することができます。 この記事では、WindowsでPythonの仮想環境を構築する方法について説明します。

## 作成場所を決める

最初に、仮想環境を作成したいディレクトリ（フォルダ）に移動します。コマンドプロンプトで **`cd`** コマンドを使用してディレクトリを移動できます。例えば、**`my_project`** という名前の新しいディレクトリを **`C:\Users\Username`** 下に作成したい場合、以下のコマンドを入力します：

```powershell
cd C:\Users\Username
mkdir my_project
cd my_project
```

### cdを使わない方法
エクスプローラから作成したい場所で「cmd」を入力してEnterを押すと
ターミナルが起動する。

![cmd_open.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/782507/90ec7be5-f7bb-5cc4-b29e-59cd738ed6d5.png)


コマンドを使用せず、Windowsのエクスプローラーからフォルダを作成してもOK。
私はよくCドライブ以外に仮想環境を作成しています。



## 仮想環境の作成

WindowsでPythonの仮想環境を作成するには、まずはPythonをインストールする必要があります。Pythonの公式サイトから、最新のバージョンをダウンロードしてインストールしましょう。

Pythonがインストールされたら、仮想環境を作成するために「venv」モジュールを使用します。 コマンドプロンプトまたはPowerShellを開き、以下のコマンドを実行します。

```
python -m venv myenv

```

これにより、名前が「myenv」の新しい仮想環境が作成されます。仮想環境の名前は自由に設定できます。
python -m venv （好きな名前）

例：「.venv」「venv1」とか。

## 仮想環境の有効化

仮想環境を作成したら、有効化することができます。有効化することで、仮想環境で使用するPythonのバージョンやライブラリが、グローバルなPythonの設定とは分離されます。以下のコマンドを実行して、仮想環境を有効化します。

```powershell
.\myenv\Scripts\activate
```

仮想環境が有効になると、コマンドプロンプトまたはPowerShellのプロンプトの先頭に、仮想環境の名前が表示されます。

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

仮想環境が作成され、有効化されたら、必要なパッケージをインストールすることができます。 仮想環境でのパッケージのインストールは、通常のPythonのインストールと同じように、pipを使用します。 以下のコマンドを実行して、必要なパッケージをインストールします。

```
pip install <package-name>

```

（使用例）
pip install pandas
pip install numpy
pip install flask


## vscodeを起動する
VSCodeを使用しない方は読み飛ばしていただいて大丈夫です。

VSCodeをコマンドラインから起動するには、まず環境変数のPATHにVSCodeの実行ファイルへのパスを追加する必要があります。この作業はVSCodeのインストール時にオプションとして選択可能です。

PATHにVSCodeが追加されている場合、任意のディレクトリで以下のコマンドを実行すれば、そのディレクトリをワークスペースとしてVSCodeが開きます：

```powershell
code .
```

これで現在のディレクトリ（**`.`**が現在のディレクトリを指す）がVSCodeで開きます。

## プロジェクトの構成

あくまで参考程度です。プロジェクトディレクトリの構造はプロジェクトの種類や個々のニーズによります。一般的なPythonプロジェクトのディレクトリ構造は以下のようです：

```bash
my_project/
│
├── myenv/              # Pythonの仮想環境（スクリプトやデータはここに置かない）
│
├── src/                # プロジェクトのソースコード
│   ├── __init__.py
│   ├── my_script.py    # Pythonスクリプト
│   └── ...
│
├── tests/              # テストコード
│   ├── __init__.py
│   ├── test_script.py
│   └── ...
│
├── data/               # データファイル
│   └── ...
│
├── docs/               # ドキュメンテーション
│   └── ...
│
├── .gitignore          # gitignoreファイル（Gitを使用している場合）
├── README.md           # プロジェクトの説明を書いたMarkdownファイル
├── requirements.txt    # 必要なPythonパッケージのリスト
└── setup.py            # セットアップスクリプト（パッケージ化する場合）
```


（上の構造の見方がわからない人向け）
Windowsのエクスプローラで視覚化すると、棒線の先にフォルダやファイルがあるイメージです。順番が変ですが…。

![tree_image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/782507/27b27730-6401-fdb3-cf2c-b4bf84b2d163.png)


VSCodeで開くと最初は、myenv/のフォルダしかないと思います。
まずは、testフォルダを作成して、その中にtest.pyというフォルダを作成することから始めてください。


この例では、**`my_project`**ディレクトリはプロジェクトのルートディレクトリとなります。**`src`**ディレクトリにはプロジェクトの主なソースコードを置き、**`tests`**ディレクトリにはテストコードを置きます。

**`data`**ディレクトリはプロジェクトで使用するデータファイルのためのもので、**`docs`**ディレクトリはプロジェクトのドキュメンテーションのためのものです。

これらのディレクトリは、プロジェクトの規模や複雑さに応じて、さらにサブディレクトリに分割されることもあります。そして、**`.venv`**ディレクトリは仮想環境を作成した場所となります。



## まとめ

以上で、WindowsでPythonの仮想環境を構築する方法について説明しました。仮想環境を使用することで、Pythonのバージョンやライブラリのバージョンを分離して管理することができ、アプリケーション開発に役立ちます。 仮想環境を作成し、有効化して必要なパッケージをインストールすることで、Python開発をよりスムーズに行うことができます。