- 给函数参数增加元信息
- 问题:
- 写好一个函数,想为这个函数的参数增加一些额外的信息,其他使用者可以更清楚的知道这个函数如 何使用。
- 解决方案:
- 使用函数参数注解是一个很好的办法,它能提示应该怎样正确使用这个函数。比如:
def add(x:int, y:int) ->int:
return x + y
print(help(add))
"""
Help on function add in module __main__:
add(x:int, y:int) -> int
"""
- 尽管可以使用任意类型的对象给函数添加注解,不过通常来讲,使用类或者字符串比较好。
- 讨论: 函数注解只存储在函数的__annotations__属性中,比如:
print(add.__annotations__)
# {'x': <class 'int'>, 'y': <class 'int'>, 'return': <class 'int'>}
- 尽管注解的使用方法可能有很多种,但他们主要的用途还是文档。因为Python没有类型声明,通常来讲,仅仅通过阅读源码很难知道应该传递声明样的参数给这个函数。