VSCodeでPythonを使っているときに、「unresolved import」エラーが出ることがあります。この記事では、そのエラーの対処法をご紹介します。

状況

あるプロジェクトで、以下のようなディレクトリ構造を持っているとします。

testPrj
├── bin
├── include
├── lib
├── pyvenv.cfg
└── src
    ├── modules
    │   └── somemodule.py
    └── main.py

main.pyからsomemodule.pyをインポートする場合、以下のように書きます。

from modules import somemodule

しかし、このコードを書くと、「modules」の部分に対して unresolved import 'modules'Python(unresolved-import) というエラーが表示されます。しかし、このままmain.pyを実行すると、somemoduleを正常に読み込んだ上で実行も正常に完了します。

解決法

この問題の解決法は以下の3つのステップです。

  1. VSCodeのワークスペース直下に.envを追加
  2. .env内にPYTHONPATHとして「src」を指定
  3. VSCodeのsettings.json.envのパスを指定

具体的には、.envの中身は以下のようになります。

PYTHONPATH=src

そして、settings.jsonへの追加は以下のようになります。

{
  "python.envFile": "${workspaceFolder}/.env"
}

これで、「unresolved import」エラーが解消されるはずです。

まとめ

VSCodeでPythonを使っているときに、「unresolved import」エラーが出ることがありますが、上記の手順で解決できます。これにより、Pythonのコーディングがよりスムーズになります。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です