在Visual Studio Code中,即使Python解释器成功导入了它,仍然出现了pylint导入错误的问题。

21 浏览
0 Comments

在Visual Studio Code中,即使Python解释器成功导入了它,仍然出现了pylint导入错误的问题。

我正在使用VSCode编写Python代码。在我的代码中,我使用了pandas、numpy和requests库。如果我运行代码,它可以正常工作。但在VSCode编辑器中的问题部分,始终会显示以下信息:\n

无法导入'numpy'(pylint导入错误)
无法导入'pandas'(pylint导入错误)
无法导入'requests'(pylint导入错误)

\n我在StackOverflow的问题中搜索答案,它建议使用pip安装pandas。我也这样做了。但问题仍然存在。如何在VSCode编辑器中解决这个问题?

0
0 Comments

在VSCode中,即使Python执行器成功导入了numpy和pandas库,但pylint仍然报告import错误。这并不是告诉你numpy或pandas没有安装。它告诉你pylint无法验证你的numpy和pandas调用。大部分的numpy和pandas是用C而不是Python编写的。

根据pylint的文档,提到:

"Linting C扩展模块不是默认支持的,特别是因为pylint无法从扩展模块中获取AST对象。"

所以,这不是你代码的问题,即使VSCode显示有问题。这是pylint的技术限制。如果你担心这个问题,可以禁用这些import语句的pylint消息E401。将"#pylint: disable=E401"放在import语句的同一行。

...或者如果你想要永久禁用它,可以在你的settings.json中添加"python.linting.pylintArgs": ["--disable=E401"]。

这个回答似乎不正确。一个正确的答案是在stackoverflow.com上找到的。在我的情况下,按照code.visualstudio.com上的建议,为Python定义了一个新的解释器。

请注意错误代码是E0401而不是E401。

我认为这个答案在原因上是正确的,尽管你可能需要使用不同的代码,可以使用E0401(正如刚刚提到的),或者像我一样使用E0611,因为我是使用"from foo import bar"而不是"import bar"。

0