首页 > 代码库 > [PY3]——函数——函数注解 | 实现类型检查功能
[PY3]——函数——函数注解 | 实现类型检查功能
函数注解(Function Annotations)——> 可以在定义函数的时候对参数和返回值添加注解
写函数注解
#平时我们使用help()可以查看一个函数的说明,我们自己写的函数也可以提供这样的说明#第一种方式:直接在函数内 ‘‘‘写文本‘‘‘def add(x,y): ‘‘‘x+y @:param x int @:param y int @return int ‘‘‘ return x+y#print(help(add)) Help on function add in module __main__: add(x, y) x+y @:param x int @:param y int @return int (END)# 第二种方式:更常用,是python中的函数注解语法# 参数:类型 或 参数:"说明文本" -> 返回值类型
def add(x:int,y:"It‘s a int") ->int: return x+y()print(help(add)) Help on function add in module __main__: add(x:int, y:"It‘s a int") -> int (END)
查看函数注解
function.__annotations__
# function.__annotations__print(sum.__annotations__)#{‘return‘: <class ‘int‘>, ‘lst‘: typing.List<~T>[int]}
inspect.signature
# inspect.signatureimport inspect# 获取函数注解sig=inspect.signature(add)print(sig)#(x:int, y:"It‘s a int") -> int# 获取函数参数(其输出是个有序字典)print(sig.parameters)#OrderedDict([(‘x‘, <Parameter "x:int">), (‘y‘, <Parameter "y:"It‘s a int"">)])## 获取指定参数注解 ### 法1:print(sig.parameters[‘x‘])#x:int# 法2:print(sig.parameters[‘x‘].annotation) #即利用parameters输出的有序字典来访问#<class ‘int‘>## 获取返回值注解 ##print(sig.return_annotation)#<class ‘int‘>print(sig.parameters.values())#odict_values([<Parameter "x:int">, <Parameter "y:int">])
[PY3]——函数——函数注解 | 实现类型检查功能
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。