我使用下面的设置

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设置中设置它,但它也没有显示。

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


当前回答

首先确保您已经安装了插件,但是工作区目录可能没有正确设置。只需检查Pylint并编辑底层设置。json文件。

{
    "python.pythonPath": "/usr/local/bin/python3",
    "git.ignoreLimitWarning": true
}

其他回答

如果你像我一样更喜欢视觉,你可以使用菜单File→Preferences→Settings (Ctrl +,)中的visual Studio Code配置。选择扩展→Python。

在Analysis: Disabled一节中,添加以下消息的抑制:

在我的例子中,我已经激活了一个Conda环境,但我仍然希望本地Python模块可以用于自动补全、查看定义等。

我尝试了许多解决方案,如添加Python路径列表等,但最终为我解决这个问题的是创建一个符号链接,从Conda的lib/ Python{你的版本}/site-packages到我的本地模块。

这是因为Visual Studio Code将当前文件夹视为主文件夹,而不是实际的主文件夹。

快速修复的方法是提供主文件夹的解释器路径。

按Command + Shift + P(或按Ctrl + Shift + P在大多数其他系统)。

Python解释器类型

从可用选项中选择安装Python的路径。

这个问题已经在GitHub上打开了:

Python无法解决导入问题#3840

MagnuesBrzenk和SpenHouet给出了两个非常有用的答案。

目前最好的解决方案是在项目根文件夹中创建一个.env文件。然后像这样添加一个PYTHONPATH:

PYTHONPATH=YOUR/MODULES/PATH

在你的设置中。json添加:

"python.envFile": ".env"

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

pipenv install pylint-django

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

load-plugins=pylint-django