廖雪峰python3高阶函数部分理解

廖雪峰python3高阶函数部分理解

时间:2018年04月21日00:00:03

4.20,看了廖雪峰的python3教程,没有看太多,只看了高阶函数的map(前几天),reduce,filter,sorted函数.

总结一下:

  1. map函数,用法map(f,Inerator)
    f表示一个函数,Inerator表示一个迭代器,类似[1,2,3]这种可被for循环访问的,其效果为对迭代器中每一个值都执行f函数的操作,并返回一个迭代器,返回的迭代器可使用一个变量接住,后对该迭代器迭代即可取出其中的元素,也可使用list函数list(map(f,Inerator))这样就成为列表.

  2. reduce函数,初次见到这个函数,其实对它不是很理解.因为作者用了一个sum来举列子,当时还在想为什么这样浪费呢?后来发现有些玄机.reduce函数格式reduce(f,[x1,x2,x3,x4])=f(f(f(x1,x2),x3),x4),和秦九韶算法好像一样(虽然我忘了那是啥).但reduce很有用.

  3. filter函数,筛选.filter(f,Inerator)差不多,对迭代器中的元素执行f操作,如果返回结果为真,则留下,反之丢掉,和map相同,它返回也是迭代器.表示不是很懂下面的是什么.

    def _not_divisible(n):
       return lambda x: x % n >0

  4. sorted函数简单点.就接受一个key,可对排序方式进行设定sorted([1,-2,5,-9],key=abs)就是按绝对值排序

  5. 其实还看了装饰器和闭包,无奈感觉智商不够,没法理解,改日再看一遍这两个.

    end:2018年04月21日00:21:28

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值