Flake8对内置函数抱怨“未定义变量”

时间:2019-10-10 22:01:05

标签: python visual-studio-code flake8

我为VSCode上的项目选择了flake8,并将其安装到我的virtualenv中。它抱怨许多内置函数,例如open

complains about open

我认为是,因为VSCode在virtualenv中运行flake8 它没有看到内置函数

如何在我的virtualenv中使用flake8并删除这些烦人的警告?我希望将flake8保留在我的环境中,因为我也通过要求和严格的版本定义来共享它。

谢谢。


环境

  • VSCode 1.38.1
  • Manjaro 18.1.0
  • Python 3.7.4
  • flake8:3.7.8 (mccabe: 0.6.1, pycodestyle: 2.5.0, pyflakes: 2.1.1) CPython 3.7.4 on Linux

1 个答案:

答案 0 :(得分:0)

我不知道是什么原因导致此错误。我假设,VSCode在virtualenv上选择了flake8,但似乎没有。让我先给出解决方案,然后再详细说明。

您需要打开用户设置(通过命令Palette,CTRL + P查找)并搜索flake8

flake8 settings

我们对“ Flake8 Path”设置感兴趣,该设置默认为“ flake8”值,如屏幕截图所示。

我认为这将从virtualenv中获取flake8,但事实并非如此。我们需要将其值更改为${workspaceFolder}/.venv/bin/flake8(将.venv更改为您的通用virtualenv文件夹),这将消除错误。

因此,剩下的唯一谜团是VSCode找到flake8的地方。我既没有全局安装也没有以用户身份安装flake8,但是由于我们已经解决了问题,因此无论如何都不应该理解。