経緯
を参考に、JupyterLabの仮想環境上での作業ページを作ったが、ModuleNotFoundErrorが発生した。
まあいつものことなので、どうせJupyterに仮想環境内のモジュールへのパスが通っていないのだろうなとsys.pathを見てみると当たり。
毎回sys.path.appendをするのは面倒くさすぎるので、ちょっと手を加えてなんとかする。
(初めてのQiitaの記事作成です)
使用OS
windows11
作業手順
参考
IPython Kernelのスタートアップスクリプトを利用する。
Powershell
$ ipython profile create
$ ipython locate
/Users/username/.ipython
.ipython/profile_default/startup に、名前が数字 2 ケタから始まる Python スクリプトを入れると、カーネルの起動時にそれが呼び出されるようになる。
例えば、00-first.py を作って、以下のようにする。
00-first.py
import sys
sys.path.append('.\\venv\\Lib\\site-packages')
わざと相対パスにすることで、どの仮想環境(カーネル)を起動しても、パスが通るようにしている。
ちなみに仮想環境を作るとき、環境名を統一してないと、もちろんこの方法は通用しないので注意。
余談
自分はまだ使ってないが、多分仮想環境はPoetryを使ったほうがいい。
参考