WSL + vscode 環境でJupyter Notebookを使えるまでの設定
TL;DL
- WSL上でvscodeでJupyter Notebookを書きたかったため作業メモ
環境
- Host OS: Windows 10
- Linux環境: WSL2 + Ubuntu 22.04.3 LTS
- shell: bash
Pythonのインストール
Ubuntu 22.04のデフォルト状態ではpythonが入っていないのでインストールする必要がありました。
apt
コマンドでインストールします。
$ sudo apt install python3
python3
コマンドを実行するとインタプリタが立ち上がります。verionsは3.10.12です。
Python 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
python
コマンドをpython3
に通すためpython-is-python3
パッケージをインストールします。
$ sudo apt install python-is-python3
Python仮想環境 venvを作成
作業ディレクトリで仮想環境をvenv
の名前で作成します。
$ python -m venv venv
venvの有効化
$ source ./venv/bin/activate
プロンプトの前に(venv)が表示されます。
(venv) $
Jupyterをインストール
仮想環境にjupyterをインストール
(venv) $ pip install jupyter
vscodeのJupyter拡張をインストール
pythonカーネルの指定
Jupyterに使用されるカーネルを明示的に追加するためipython kernel
コマンドを使用します。
(venv) $ ipython kernel install --user --name=venv --display-name=venv
vscodeでファイル作成
「File」→「New File」からファイルを作成を選択すると、Jupyter Notebookという選択肢が現れるので、ファイル名を入力の上これを選択し作成します。
ここではtest.ipynb
というファイル名にし、print文を記述。
Code部分の▷ボタンを押してとjupyterが実行されます。
初回はjuypterで使用するkernelを選択する必要があり、選択肢が表示されます。
※venv内のpython
コマンドを選択するのですが、この選択肢に表示されない場合があります。
手元の環境では上記の
を実施しvscodeの再起動もしたところ、この現象は解消。
Python仮想環境 venvについて
- python3.3以降で使用可能
-
python -m venv '仮想環境名'
で作成
$ python -m venv my-env
- bashの場合
source /仮想環境名/bin/activate
で有効化
$ source ./my-env/bin/activate
vevnを有効化すると、仮想環境配下(上記例では./my-env配下)のpython系コマンドやLibraryにpathが通り、pip
コマンドでのパッケージも仮想環境の配下にインストールされます。
有効化コマンドはshellやOSなど環境によって異なります。
Pythonドキュメント -- venv 仮想環境の作成 -- 仮想環境のしくみ を参照
その他
WSLがそもそも仮想、かつ手元のお試しのような環境構築にvenv使うのは大して意味がない気も
参考