首页 > 解决方案 > 检测不可用的类型注释

问题描述

在 Python (3.6+) 中,如果在尝试初始化 dict 时错误地使用冒号,它会被解释为有效语法,可能表示类型提示。但是,这些信息只是被丢弃了,似乎无法检索。

>>> a: int
>>> b: 3
>>> d= {}
>>> d['something']: 4
>>> d
{}
>>> __annotations__
{'a': <class 'int'>, 'b': 3}

有没有办法使用 Python 标准库中的工具(不包括 re 模块)以某种方式解析此代码并检索被丢弃的信息,从而识别类型提示语法被滥用。

我确实提交了一个关于此的错误(https://bugs.python.org/issue41488),但它被关闭为无关紧要。

标签: pythontype-hinting

解决方案


推荐阅读