7
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

インポート "XXX" をソースから解決できませんでした(PylancereportMissingModuleSource)にサヨナラしよう

Last updated at Posted at 2023-07-31

起きていること

VSCodeで拡張機能Pylanceを導入すると使用するパッケージの格納箇所によってはimport文で次のメッセージが表示されることがある。

インポート "XXX" をソースから解決できませんでした(PylancereportMissingModuleSource)
このメッセージは実行可能であっても表示されることがある。

今まで特に実行に影響ないためそのままだったがソースを開いていつも波線が出ているのは気持ちが悪いので対応しようと思う。

対応時の環境

Python 3.11.4
VSCode 1.80.2
Pylance v2023.7.40

対応内容

今回仮想環境を導入していてフォルダ構成は次のようになっている。
関係のないディレクトリ、ファイルは省略している。

.
├── .vscode
│   └── settings.json
├── venv
│   └── Lib
│       └── site-packages
│           └── pandas
└── example.py

example.pyには次のようなimport文がある。

example.py
import pandas as pd

import文には波線が出ておりカーソルを合わせると次のように表示される。
image.png
./.vscode/settings.jsonに次の設定を加えることで解決する。

settings.json
{
    "python.analysis.extraPaths": ["./venv/Lib/site-packages"]
}

まとめ

Pylanceのトラブルシューティングによるとユーザーが使用しているワークスペースディレクトリやsrcといった一般的な名前のディレクトリの場合は自動取得されるため明示的にsettings.jsonに書かなくても問題ない模様。
そうではない今回のように自動取得の対象とならないような階層の場合設定が必要となるようだ。

参考

7
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?