首页 > 解决方案 > 安装模块时,VSCode/pylint 将模块 win32event 报告为未解析的导入

问题描述

这是一个小烦恼,但是,pywin32 模块被 VSCode 中的 python linter 报告为未解析的导入。

我已经安装了 pywin32,并且可以在终端会话中以及脚本运行时导入模块。

我的 python.pythonPath 在我的 settings.json 中设置正确。

linter 似乎无法找到模块。

但是,如果我使用以下语法,linter 可以工作,但导入在运行时显然会失败。

import win32.lib.win32event

关于如何“制作” VSCode 或 linter 的任何想法与正确的导入相匹配?

标签: pythonvisual-studio-codevscode-settingslintpylint

解决方案


Pylint 有一个配置文件,由命令行开关加载配置文件--rcfile. 中的条目之一是ignored-modules=. 注释行将此选项描述为“不应检查其成员属性的模块名称列表”。还有其他几个类似的选项。

这些选项是必需的,因为 pylint 是一个静态类型检查器,这意味着它不会加载模块,而只是检查其源代码。对于像 win32 集合这样的模块,它使用 pylint 无法检查的 .dll 文件。因此,pylint 无法弄清楚 win32 公开了哪些名称。因此,您能做的最好的事情就是告诉 pylint 禁止显示错误消息。


推荐阅读