Python函数参数、返回值注解

首先看一下C语言的自定义函数,如下:

C语言
int func(int a)
	...
	return 0

非常明显,函数定义的第一行就可以知道,自定义函数func,输入了一个int型参数,返回了一个int结果。在调用该函数时,如果没有按照要求输入一个int参数,程序就会报错。
再来看一下Python的自定义函数,如下:
Python

def func(x):
	...
	return 0

从函数定义中能看出什么?只能看出这个自定义函数有一个参数,这个参数是什么类型,这个函数的返回值是什么都不清楚。因此,在Python3.5后,引入了函数参数与返回值的注解。以两数求和为例,如下:

Python3
def func(x: int, y: int) -> int:
'''return type int, return x add y '''
	return x+y

为函数的参数和返回值都加上了注释,x: int , y: int 说明了输入的两个参数都是int。 -> int 说明返回值也是int。再加上函数注释return type int, return x add y,清楚的说明了这个函数的作用。
这样看起来就直观多了。但是还有个问题,虽然函数参数和返回值是这么注释的,但在使用该函数时没有按照注释要求输入会怎样呢?如下:

add("aa", "bb")
返回结果
"aabb"

没有抛出异常。那注释与否又有什么用呢?不可能就是起个提示作用吧。这就要说到Python3中的标准库inspect……

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值