【vscode】環境構築 #1-venvで仮想環境作成-【Python】

今回のゴールはvenvで適当な場所に作った環境をVisual Studio Code(vscode)から参照することです。第1回なので最初の動作確認も行います。スクリーンショットはしつこいぐらいに貼っていきます。

前提条件

  • Windows
  • vscodeインストール済み
    • 拡張機能Pythonインストール済み
  • Pythonインストール済み

Pythonのインストールについてはpython.jp説明を見て行えば間違いないでしょう。

Python環境構築の基本

Pythonの環境構築方法はものすごいたくさんあります。今回ご紹介するのはその環境構築の中の一つです。Pythonの特徴の中にパッケージをインポートして使えることが挙げられます。ざっくりいうと、機能のかたまり(グラフを書く、行列計算をする、機械学習をするなど)が公開されていて、自分でプログラミングしなくても使うことができるという仕組みがあります。機能のかたまりのことを パッケージといい、それを使えるようにすることをインポートするといいます。

Pythonをインストールした段階ですべてのパッケージが使えるわけではありません。自分で必要なパッケージをダウンロード・インストールする必要があります。パッケージのダウンロード・インストールにはpipというパッケージ管理ツールを用います。

実際に使用する際には、作りたいプログラムによって使いたいパッケージが変わります。パッケージの中には似たような機能のものがあったり依存関係があったりするものもあるので、作りたいプログラムに合わせてパッケージを変える必要があります。そういうときのために仮想環境を作っておくと便利です。ほぼ確実に使いたいパッケージはPython本体に入れてしまい、特定の用途にしか使わないパッケージは仮想環境に入れるといいでしょう。仮想環境を管理する方法もたくさんありますが、今回はPythonに標準搭載されているvenvを用います。

Pythonを動かしてみる

適当なフォルダを開き、適当なファイルを作り、拡張子を.pyにします。
pythonファイルを作成
いろいろと右下に出てきますが、今は無視してF5で実行します。ファイルの中身にはprint(hello)などと書いておきます。
F5で実行
一番上のPython Fileを選択すると実行できます。
Python Fileを選択
ターミナルが開き、helloと表示されました。
ターミナルに実行結果が表示される

pipの確認とupgrade

ターミナルが開いたついでに、パッケージリストを見てみましょう。pip listというコマンドでパッケージリストを確認できます。
パッケージリストを確認
パッケージ名とバージョン番号が表示されます。デフォルトの状態では2つのパッケージがあることがわかります。パッケージ管理ツールのpip自身もパッケージです。黄色い文字でpipをアップグレードするように促されているので、その通りにします。そこに書いてある通りpython -m pip install --upgrade pipとターミナルに打ち込みます。
pipを更新しておく

venvによる仮想環境の作成

以下のコマンドで仮想環境を作ります。

python -m venv [フォルダ名]

venvによる仮想環境の作成
[フォルダ名]の部分には自分が仮想環境を作りたいフォルダの名前を入れてください。仮想環境は複数作られるので、仮想環境だけを入れておくフォルダを用意しておくといいでしょう。私は以下のようなフォルダ構造にしました。今回作ったのはtest_envですが、ほかの環境も同じ環境に作っていく予定です。

python_envs
├─test_env
│ ├─Include
│ ├─Lib
│ ├─Scripts
│ └─pyvenv.cfg
├─ほかの環境1
├─ほかの環境2
└─ほかの環境3

test_envの中身は以下のような構成になっています。
作成された仮想環境の構成
vscodeの左下にあるPythonのバージョンをクリックすると環境を選択することができます。
左下のバージョンをクリックしてPython環境を選択
しかし、先ほど作成した環境はまだ選択できません。vscodeにどこに仮想環境があるかを教える必要があります。F1をクリックし、Settingで検索して基本設定: ユーザ設定を開くを選択します。
設定を開く
検索欄にvenvと入力し、Python: Venv Pathの部分に先ほど仮想環境を作った親のパスを入れます。python_envsの下にtest_envを作ったのであれば、python_envsまでの絶対パス(D:\python_envs等)をここに入力します。
Venv Pathを設定
一度設定を再読み込みします。F1をクリックし、reloadで検索し、Developer: ウィンドウの再読み込みを選択します。
Windowのリロード
ウィンドウが再読み込みされ、しばらくすると左下にPythonバージョンが表示されます。これをクリックすると先ほど作成したtest_envが選択できるようになります。
Pythonの環境切り替え

終わりに

Pythonを始めたばかりだと、なぜ仮想環境で区切らなければならないのかが理解しづらく、めんどくさいので放置しがちです。そうするとどんどんPython本体の環境が膨れ上がり、管理できなくなってしまいます。学会発表された手法がGithubなどで公開されていていち早く試したいなどという場合、依存関係のあるパッケージのバージョンが指定されていることが多いです。そういう時にPython本体のパッケージを最小限にとどめておくと、詰まることが少なく環境をきちんと切り分けることができます。

さらに詳細についてはvscodeのドキュメント(英語)に書いてあります。この記事のように設定しなくても、デフォルトで仮想環境を探すパスがあります。そこに仮想環境を作成しても同じようなことができます。また、vscodeで現在開いているフォルダ(workspace folder)も検索されるので、そのプロジェクトにしか使用しない仮想環境はそこに作成してもよいでしょう。

コメント

タイトルとURLをコピーしました