我使用下面的设置

macOS v10.14 (Mojave) Python 3.7.1 Visual Studio Code 1.30 2.2.2 Pylint Django 2.1.4

我想使用linting使我在Visual Studio Code中的工作更容易一些。然而,对于每一个进口,我都有“未解决的进口”的状态。即使是默认的Django导入(即从Django .db导入模型)。

我认为这是因为它没有看到虚拟环境的Python文件。

一切都很好,但它开始变得烦人。

我选择的解释器都是Python的系统版本。它似乎根本看不到我的虚拟环境Python(它与我的工作空间不在同一个目录中,因此这部分是有意义的)。

如果我设置好python。设置中的PythonPath。Json文件,它只是忽略它,没有列出我的虚拟环境路径作为一个选项。我还尝试在我的全局Python设置中设置它,但它也没有显示。

有没有快速修复方法让它工作?


当前回答

当我执行>重载窗口时,它就修复了。

参考:Python未解决的导入问题#3840,dkavraal的评论

其他回答

如果出现Pylint错误,请安装以下程序

pipenv install pylint-django

然后在根文件夹中创建一个文件.pylintrc,并编写以下内容

load-plugins=pylint-django

我已经通过Ctrl + Shift + P解决了导入错误。 输入“首选项设置”,并选择选项首选项打开设置(JSON)

并添加一行“python”。pythonPath环境”:“/ usr / bin /”

因此JSON内容应该是这样的:

{
    "python.pythonPath": "/usr/bin/"
}

如果存在其他配置行,则保留它们。 这将导入使用PIP自动完成安装的所有模块。

我似乎有这个问题,因为django安装在我的基本虚拟环境,而不是我实际使用的项目。这基本上导致它工作,但显示错误,不能正确自动完成。

要解决我简单

打开Anaconda Navigator 单击左侧菜单中的环境 选择项目使用的虚拟环境 在虚拟环境中,点击绿色三角形(一旦加载)并选择“打开终端” 运行'pip install django'

完成后,你可以回到VS Code,切换python环境到base,然后回到VS Code左下角你想要的环境。

错误应该消失,自动补全应该工作。

在你的工作空间设置中,你可以这样设置你的Python路径:

{
    "python.defaultInterpreterPath": "/path/to/your/venv/bin/python",
}

我的解决方案

此解决方案仅适用于当前项目。

In the project root, create folder .vscode Then create the file .vscode/settings.json In the file setting.json, add the line (this is for Python 3) { "python.pythonPath": "/usr/local/bin/python3", } This is the example for Python 2 { "python.pythonPath": "/usr/local/bin/python", } If you don't know where your Python installation is located, just run the command which python or which python3 on the terminal. It will print the Python location. This example works for dockerized Python - Django.