【发布时间】:2021-08-31 08:39:18
【问题描述】:
我知道标题可能无法准确说明我的要求,所以这里有一小段代码应该解释一下:
def echo(msg: any) -> None:
print(str(msg))
由于'any'是一个函数,我想问这样的语法是否正确。我知道我应该给出一个像'object'之类的类型,但我只想知道语法是否正确。
【问题讨论】:
-
类型提示的语法是参数名,冒号,然后是类型。
-
语法很好,但不推荐将函数注释用于除类型提示之外的任何内容。唯一的运行时要求是注解是一个有效的表达式(虽然我认为在 Python 3.10 中会放宽,当
from __future__ import annotations是默认值并且注解被简单地记录为字符串)。 -
另外,不要将函数
any与类型提示typing.Any(表示任意类型)混淆。 -
我不太确定问题是“我应该为
any写什么”而答案是typing.Any?