Python中 "->"符号的意义
程序员文章站
2022-04-11 15:42:15
...
Python中 "->"符号的意义
这是一个叫做返回值注解的符号。它通过允许将元数据附加到描述其参数和返回值的函数来扩展该功能。
例如:
def f(ham:str, eggs:str = 'eggs') -> str:
pass
表示返回值类型应该为str。(在此也可以不限于数据类型,也可以是具体字符串比如说‘Egg Number’,甚至是任何表达式等等)
我们可以用函数对象的__annotations__属性获取。
>>> print(f.__annotations__)
{'ham': <class 'str'>, 'eggs': <class 'str'>, 'return': <class 'str'>}
这个东西有什么好处呢?
一个是非常方便允许使用预期类型注释参数; 然后很容易编写一个装饰器来验证注释或强制正确类型的参数。
另一个是允许特定于参数的文档,而不是将其编码到docstring中。
上一篇: jquery禁止输入数字以外的字符的示例(纯数字验证码)
下一篇: Linux系统磁盘