vscode 中的 Python linter 类型检查不完整(预期...得到...)

sam*_*den 5 python lint visual-studio-code mypy python-typing

我使用 vscode,发现 Python linter 无法检测何时使用与其签名定义不同类型的参数调用 python 函数。

在这种情况下,该函数需要 atyping.Type[Exception]而不是Exception

在此输入图像描述

Pycharm检测到这种情况:

在此输入图像描述

我认为mypy不会检测到这个,因为它使用该typing模块(mypy检测内置类型中的类型不匹配)。

  • 有没有办法配置 mypy 来检测这样的情况?
  • pycharm使用哪个linter?vscode 里有吗?
  • 还有另一个 linter 可以完成这项工作吗?

注意:我遵循了这篇 SO帖子( )中的标志建议,--check-untyped-defs但它不起作用。

sam*_*den 6

按照评论部分中的建议后,我可以通过以下方式在 vscode 中执行此操作:

  1. 安装Pylance 插件
  2. 在用户设置中设置以下参数:
    "python.languageServer": "Pylance",
    "python.analysis.typeCheckingMode": "strict",
Run Code Online (Sandbox Code Playgroud)