Pylint "unresolved import" error in visual studio code


Question

I am using the following setup

  • MacOS Mojave
  • Python 3.7.1
  • Visual Studio Code 1.30
  • Pylint 2.2.2
  • Django 2.1.4

I want to use linting to make my life a bit easier in visual studio code however, every import i have states "unresolved import". Even on default django imports (i.e. from django.db import models).

I presume it is because it is not seeing the virtual environment python files.

Everything works just fine but but it's starting to get annoying.

The interpreter choices i have are all system versions of python. It does not seem to see my virtual environment python at all (it is not in the same directory as my workspace, so that part makes sense).

If i setup the python.PythonPath in the settings.json file, it just ignores it and does not list my virtual environment path as an option. I also tried setting it up in my global python settings but it also does not show up.

Has anyone run into this issue and know a quick fix to get it working?

Thanks, jAC

1
27
7/15/2019 2:49:36 PM

Accepted Answer

In your workspace settings, you can set your python path like this:

{
    "python.pythonPath": "/path/to/your/venv/bin/python",
}
27
12/27/2018 6:21:08 AM

This issue has already been opened on GitHub: https://github.com/Microsoft/vscode-python/issues/3840 There are 2 very useful answers, by MagnuesBrzenk and SpenHouet.

The best solution for now is to create a .env file in your project root folder. Then add a PYTHONPATH to it like this:

PYTHONPATH=YOUR/MODULES/PATH

and in your settings.json add

"python.envFile": ".env"  

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon