VSCodeでのPython、Jupyter実行環境の構築方法をまとめました。Anacondaを使っていますが、Minicondaなど他の環境でも同様に設定できると思います。
また、Pythonでデータ分析する人は、ブラウザからJupyter notebookやJupyter Labを使う方が多いと思います。そんな人にもVSCodeはお勧めです。
また、この記事はVSCodeを使ったPythonパッケージの作り方の記事の一部です。
Anacondaがダウンロードしてあるという仮定で話を進めていきます.(Anacondaインストール時に同時にVSCodeをインストールするのではなく別途インストール)
また各ソフトのバージョン違いや、英語、日本語の違い等によって画面の表示が異なる場合もあると思います。その場合は適宜読み替えてください。
環境
備考 | ||
---|---|---|
OS | Windows10 | |
conda | 4.8.3 | Anaconda Promptでconda -V
|
Anaconda | 2020.02 | Anaconda Promptでconda list anaconda
|
Python | 3.8.2 | |
VSCode | 1.43.2 |
また、例としてKaggleのタイタニック号のデータを使うことにしますが、データはなくてもVSCodeでのPython実行環境の構築はできるので用意しなくても大丈夫です。
VS Codeのインストール
VS Codeをインストールしてください。基本,何も考えずに[次へ]でいいと思います。
Anacondaでの仮想環境の立ち上げ
Anaconda Promptを立ち上げ、
conda create -n 好きな環境名 python=Pythonバージョン
今回は環境名はtitanic
とします。
(環境を作った後、
conda info -e
で仮想環境の一覧が表示できるので、ちゃんと自分の環境名があるか確認してください。)
そして仮想環境を起動します。
conda activate titanic
ここから必要なモジュールをインストールします。例としてpandas
をインストールしておきましょう。
conda install pandas
VSCodeでPythonコードを実行してみる
ここからVS CodeでのPythonを実行してみます。スタートメニューでVSCodeと検索し、VSCodeを立ち上げてください。
流れとしては
- Pytho拡張機能をインストール
- プログラムを書く
- Python実行環境を整える
- プログラムを実行
という流れになります。順番に説明します。
Pytho拡張機能をインストール
まずVSCodeが開いたら、①左端のサイドバーからExtensionsをクリックし、②python
と検索します。そして③Microsoft製のPytho拡張機能をインストールします。
プログラムを書く
フォルダを開き、実際のプログラムを書きます。
VSCodeの上のメニューバーからFile
>Open Folder
を選び、これからプログラムを作っていきたいフォルダを開きます。
適当なプログラムを作成します。訓練データを読み込み表示するプログラムです。
データがない場合は
print('Hello')
などの適当なプログラムで大丈夫ですです。このプログラムをpython上で実行してみます。
Python実行環境を整える
実行環境をCommand Promptに変更する
VSCodeでの実行環境(Terminal)をCommand Promptに変更します。
次に上のメニューバーからTerminal
>New Terminal
を選択します。
するとウィンドウ下部にターミナルがひらきます。
次にこのターミナルの右上の「+」(プラスマーク)の横の「v」のマークのプルダウンメニューから「Select Default Profile」を選択します。
そうすると、上の画像のように上からターミナルの種類を選べるようになるので、「Command Proompt」を選択してください。
これはTerminalがGit BashやPowerShellのままだとPythonが実行できないから変更します。(Windowsの場合だけかもしれません)
Pythonインタプリタを設定する。
次にPythonコードを実行するためのインタプリタ(実行環境)を設定します。
①Ctrl
+Shift
+P
を押し、VSCodeのコマンドパレットを開き、②python select
と検索します。そして③Python Select Interpreter
を選択します。
そして先程作った「好きな環境名」の環境を選択します。今回の場合はtitanic:conda
です。
そうすると上図のようにフォルダ内に.vscode>setting.json
というjson
ファイルが作られます。そのファイルには指定した環境のpython.exe
の場所が記載されています。
PythonインタプリタにAnacondaの環境名が現れない
ただ、同じように操作したとしても、PythonインタプリタにAnacondaの環境名が現れない場合があると思います。これはAnacondaのインストール場所をデフォルトから変えた場合などが考えられます。
その場合は以下の記事を参考に環境変数PATHなどを設定してください。
VS Code で Anaconda の Python デバッグ 環境構築(Visual Studio Code)
また、VSCodeがPC上のPythonインタプリタを検索しきれていない場合もあるので、VSCodeを再起動して数秒待ってからもう一度Python Select Interpreter
を選択し直すなどしてみてください。
Pythonの実行設定を設定する
①VSCodeでpythonコード(ここではtest.py
)を開いた状態で、②左端のサイドバーのRun
を選択し、③create a launch.json file
を選択してください。
Debug Configuration
でPython File
を選択してください。
そうすると上図のようにフォルダ内に.vscode>launch.json
というjson
ファイルが作られます。このファイルはPythonの実行設定が記載されています。
プログラムを実行する
実行したいコード(ここではtest.py
)を開いた状態で、F5
キーを押すことでコードが実行できます。
ただ初回の一回の実行は上図のようにエラーになってしまうと思います。
その場合は実行したときに現れる上図のようなボタンの赤い四角のボタン(Stop)をクリックし、実行をストップしてください。
実行を止めると、上図のように、環境が自分の環境(今回はtitanic
)に切り替わることがわかります。
この状態で再度F5
キーを押すと、上図のようにコードが実行でき、訓練データの中身が出力されました。
設定ファイルが作られ設定が完了したので、これ以降はVSCodeでF5
キーを押すだけでPythonを実行できるようになります。
デバッグの活用
VSCodeのPython実行には様々な機能があります。
上図のように訓練データをの形状を表示するようにtest.py
を書き換えます。そしてprint(train_shape)
となっている6行目でF9
キーを押します。そうすると、この行の左端に赤い点が表示されます。これをブレークポイントといいます。そしてこの状態でF5
キーを押して実行すると、
上図のように6行目で実行が一時停止し、その時宣言されている変数(ここではtrain_shape
)が左のサイドバーに表示されています。このようにブレークポイントを用いることで、プログラムのバグ取り(=デバッグ)が捗ると思います。
他にも様々な機能があるので、下の記事などを読んで、各自調べてみてください。
VS CodeでPythonコードのデバッグも楽々!! (1/4)
Jupyter Notebookの実行
ただ、データ分析する際は、データの可視化がしやすいJupyter Notebookを使うことが多いと思います。実はVSCodeではJupyterも実行することができます!
conda install jupyter
まず、Anaconda Promptで自分の環境(今回はtitanic
)にJupyterをインストールします。
そしてVSCodeで①Ctrl
+Shift
+P
を押し、VSCodeのコマンドパレットを開き、②python select interpreter
と入力します。そして③python select interpreter to start jupyter server
を選択します
そして先程と同様に「好きな環境名」(今回の場合はtitanic:conda
)の環境を選択します。
そしてJupyterを実行するためにipynb
ファイルを作成します。
このipynb
ファイルを開いたときに、右上の環境名が指定した環境になっているか確認してください。別の環境名になっていた場合はここをクリックし再度環境を指定し直してください。
ただ、VSCodeのJupyterは不安定で、動かないことも多いです。その場合はいつものように、ブラウザからJupyterを使ってください。
終わりに
ここまで長々と説明してきましたが、正直ただ単にこれだけだとデータ分析にVSCodeを使うメリットは少ないように思います。
実際、Jupyter Notebookでもnbextensionsのvariable inspector等でも同じことはできるからです。
VSCodeを使ったPythonパッケージの作り方で説明する、Pythonのパッケージ化と組み合わせると、様々なメリットが見えてきます。こちらの記事もよろしくおねがいします。