参数注解,柯里化

参数注解,Python3.5出来的功能。Python是动态语言,变量随时被赋值,且能赋值为不同的类型,这样,拿到一个函数使用不知道传入什么类型的数据,直到使用过程中,运行时才能发现问题。
作用:对函数的参数进行类型注解 对函数的返回值进行类型注解 只对函数参数做一个辅助的说明,并不对函数参数进行类型检查 提供给第三方工具,做代码分析,发现隐藏bug
函数注解的信息,保存在annotations属性中
这里写图片描述
我们可以利用这个对函数进行参数类型检查:
1.思路:
①函数参数检查,一定在函数外②函数应该作为参数,传入到检查函数中③检查函数拿到函数传入的实际参数,与形参声明对比④ annotations属性是一个字典,其中包括返回值类型的声明。假设要做位置参数的判断,无法和字典中的声明对应,这时使用inspect模块。inspect模块提供获取对象信息的函数,可以检查函数和类,类型检查
这里写图片描述
2.parameter对象
(指的参数)
保存在元组中,是只读的
包含重要的5个类型; ①name ,参数的名字 ②annotation参数的注解,可能没有定义 ③ default ,参数的缺省值,可能没有定义 ④empty,特殊的类,用来标记default属性或者注释annotation属性的空值 ⑤kind,实参如何绑定到形参,就是形参的类型
这里写图片描述
柯里化
定义:指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原来第二个参数为参数的函数
举例: 将加法函数柯里化
原函数

def add(x,y):
    return x+y
add(5,6)
def add(x):
    def _add(y):
        return x+y
    return _add
add(5)(6)

利用了嵌套函数还来实现。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值