【问题标题】:Ignoring a specific undefined variable with pyright使用 pyright 忽略特定的未定义变量
【发布时间】:2022-09-25 18:11:27
【问题描述】:

使用 VScode 编写自定义 SaltStack 模块/状态并使用 pyright 进行 linting 时,我到处都收到以下错误:

\"__salt__\" is not defined

它不是杀手,因为我可以在引用它的每一行的末尾添加以下内容:

# pyright: ignore[reportUndefinedVariable]

但我宁愿告诉我的项目__salt__ 是一个已知变量,并且不要报告该变量。

这可能吗?

  • 如果这是由 linting 引起的问题,question 是否有机会帮助您?
  • defineConstant 也许?

标签: python visual-studio-code salt-stack pyright


【解决方案1】:

我最终制定了正确的解决方案,该解决方案适用于 3.5 之后的 python 以及我绊倒的所有变量。

from typing import Any, TYPE_CHECKING

if TYPE_CHECKING:
    __salt__: Any = None
    __states__: Any = None
    __opts__: Any = None

【讨论】:

    【解决方案2】:

    您可以通过在__builtins__.pyi 文件中声明变量来做到这一点。见this

    【讨论】:

      猜你喜欢
      • 2011-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多