Fix module name resolving problem when importing Python modules on Visual Studio Code with Jupyter Docker Container
Jupyter の Docker コンテナ jupyter/datascience-notebook
を動作させ、 Visual Studio Code から利用する際に、 IDE 上の Problem が発生するケースがあります。本記事ではこの問題の解決方法を解説します。
問題
Python の import
文を記述すると、黄色の波線の表示が出ます。
例えば pandas
の部分にマウスカーソルを合わせると Import "pandas" could not be resolved from source Pylance
といった内容が表示されます。ここでは pandas は既にインストールされていることもあり、コードの記述および実行において問題はありません。しかし、これではライブラリが本当に存在しないケースと見分けがつきませんし、そもそも問題の放置は別の問題を見過ごすことにもつながるため、対処したいと思います。
手順
ターミナルを開く
例えば import pandas
で上記エラーが出ている場合、 pip show pandas
を実行します。その標準出力からライブラリの Location を取得します。
.vscode/settings.json を開く
settings.json に追記する
取得したパスをもとに、 python.analysis.extraPaths
を追記します。
1 | "python.analysis.extraPaths": [ |
問題が解消する
まとめ
Jupyter の Docker コンテナ jupyter/datascience-notebook
を動作させ、 Visual Studio Code から利用する際に、 IDE 上の Problem が発生するケースに対して、解決方法を解説しました。
些細な問題ですが、Visual Studio Code で同様のプロジェクトを作成する度に対処が必要となるので、やり方を覚えておくと有益でしょう。