python -- -> 箭头注释


当佛已无能为力,魔渡众生。


整理

https://stackoverflow.com/questions/14379753/what-does-mean-in-python-function-definitions


function annotation

箭头注释 -> 是在 py3.5 在文档注释基础上进行进一步扩展的方法注释(function annotation),其能够在方法函数的元数据上对其参数以及返回值进行显示说明,

方法注释虽然能够直接区别于文档注释,但是其在实际代码执行过程中也是没有作用的,即不做检查,不做强制,不做验证,只是在编写代码以及可读性上有更好的参考价值,还有一个好处是IDE能够对参数及返回值进行检查,减少开发bug

官网介绍: PEP 3107

例子

方法注释给封装在 __annotations__中,其返回一个字典

>>> def kinetic_energy(m:'in KG', v:'in M/S')->'Joules': 
... return 1/2*m*v**2
... 
>>> kinetic_energy.__annotations__
{'return': 'Joules', 'v': 'in M/S', 'm': 'in KG'}