python之高阶函数

1).map函数:map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。

example:

  对于序列每个元素求绝对值;

2).reduce函数:reduce把一个函数作用在一个序列[x1,x2,x3...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做计算。

       - python2中,为内置函数;
       - python3中,导入reduce, from functools import reduce

example:

  求序列的累加和

3).filter函数:filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

example:

  在一个list中,删掉偶数,只保留奇数:

4).sorted函数:

1.lisort()和()两种方法的区别?
 1).列表里面提供了sort方法,其它数据结构没有.sorted方法可以对任何可迭代对象排序
 2).sort方法支持原地排序(变量排序后,变量本身改变),sorted排序后返回一个新的列表,并不改变原有变量

默认sort和sorted方法由小到大进行排序排序,reverse=True时,由小到大进行排序

example:

  对于字典里面嵌套字典进行排序
  d = {
      '003':{
          'name':'apple1',
          'count':100,
          'price':10,
      },
      '002':{
          'name':'apple1',
          'count':200,
          'price':2
      }
  }
  print(d.items())
  print(sorted(d.values(),key=lambda x:x['count']))
  from operator import itemgetter
  print(sorted(d.values(),key=itemgetter('price')))



 

转载于:https://www.cnblogs.com/J-xiaowei/p/11574114.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值