Python中 "->"符号的意义
Python中 "->"符号的意义
这是一个叫做返回值注解的符号。它通过允许将元数据附加到描述其参数和返回值的函数来扩展该功能。
例如:
def f(ham:str, eggs:str = 'eggs') -> str:
pass
1
2
表示返回值类型应该为str。(在此也可以不限于数据类型,也可以是具体字符串比如说‘Egg Number’,甚至是任何表达式等等)
我们可以用函数对象的__annotations__属性获取。
>>> print(f.__annotations__)
{'ham': <class 'str'>, 'eggs': <class 'str'>, 'return': <class 'str'>}
1
2
这个东西有什么好处呢?
一个是非常方便允许使用预期类型注释参数; 然后很容易编写一个装饰器来验证注释或强制正确类型的参数。
另一个是允许特定于参数的文档,而不是将其编码到docstring中。
原文链接:https://blog.csdn.net/qq_44781495/article/details/89605850