首页 > 解决方案 > “冻结”未定义Pylance(reportUndefinedVariable)

问题描述

我在 VScode 上使用 pylance 来检查我的 Python 代码。数据类的冻结参数有问题:

from dataclasses import dataclass

@dataclass(frozen=True)
class DataStoreConfig():
  store_id: str
  bucket_name: str
  prefix: str

Pylance 抱怨这个错误:"frozen" is not definedPylance (reportUndefinedVariable)

当我导航到 时dataclasses.pyi,这是我看到的数据类:

@overload
def dataclass(_cls: Type[_T]) -> Type[_T]: ...
@overload
def dataclass(_cls: None) -> Callable[[Type[_T]], Type[_T]]: ...
@overload
def dataclass(
    *, init: bool = ..., repr: bool = ..., eq: bool = ..., order: bool = ..., unsafe_hash: bool = ..., frozen: bool = ...
) -> Callable[[Type[_T]], Type[_T]]: ...

所以看起来它没有选择正确的重载方法。反正要引导吗?

标签: python-3.xpyright

解决方案


推荐阅读