新警告是因为PyCharm正在使用更新的Pythonlinting规则(图)

我有以下代码定义了一个枚举,并使用 enum.auto() 为条目提供基于 1 的生成值:

from enum import Enum, auto
class Colors(Enum):
    RED = auto()
    BLUE = auto()
    YELLOW = auto()

图片[1]-新警告是因为PyCharm正在使用更新的Pythonlinting规则(图)-唐朝资源网

def main(): print(Colors.RED.value) print(Colors.BLUE.value) print(Colors.YELLOW.value) if __name__ == '__main__': main()

输出:

1
2
3

过去代码运行良好,没有任何警告,但今天更新 PyCharm 后,我现在从 auto() 收到以下警告:

Parameter(s) unfilled 

Possible callees: 
EnumMeta.__call__(cls: Type[_T], value, names: None = ...) 
EnumMeta.__call__(cls: EnumMeta, value: str, names: Union[str, Iterable[str], Iterable[Iterable[str]], Mapping[str, Any]], *, module: Optional[str] = ..., qualname: Optional[str] = ..., type: Optional[type] = ..., start: int = ..., boundary: Optional[FlagBoundary] = ...) 
EnumMeta.__call__(cls: Type[_T], value, names: None = ...) 
EnumMeta.__call__(cls: EnumMeta, value: str, names: Union[str, Iterable[str], Iterable[Iterable[str]], Mapping[str, Any]], *, module: Optional[str] = ..., qualname: Optional[str] = ..., type: Optional[type] = ..., start: int = ...) 

我检查了但找不到任何相关内容,因为所有示例仍然使用 auto() 没有任何参数。

我认为新警告是因为 PyCharm 正在使用更新的 Python linting 规则。

如何解决此警告?

更新 1:

好像 PyCharm 检测到 enum.auto() 为 enum.auto(IntFlag),所以没有填充警告参数:

我也会将此问题报告给 PyCharm 开发人员。也许这是一个错误。

更新 2:

没关系,大家。我刚刚发现这是一个错误,并在一个月前被报告在这里。

© 版权声明
THE END
喜欢就支持一下吧
点赞240赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容