最近有人问我这在 Python 中意味着什么:
>>> char : str
我不知道。我检查了文档,没有类似的内容。一个建议是它是静态类型声明,但文档中也完全没有关于这一点的内容。
有了上面的内容,如果我>>> type(char)
它失败
If I >>> char : str = 'abc'
它有效,并且 type(char) 的结果是<class: str>
。但它不能是静态声明,因为我可以>>> char : str = 4
并且 type(char) 变为<class: int>
.
这意味着什么?
您正在查看一个注解对于一个变量。提示已移至__annotations__
映射:
>>> char: str
>>> __annotations__
{'char': <class 'str'>}
变量注释用于支持第三方工具,例如类型检查器;该语法是 Python 3.6 中的新语法。
See PEP 526——变量注释的语法, and Python 3.6 中的新增功能:
就像函数注释一样,Python 解释器不会为变量注释赋予任何特定含义,仅将它们存储在__annotations__
类或模块的属性。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)