首页 > 编程语言 > 详细

python之高阶函数

时间:2019-09-23 20:56:31      阅读:90      评论:0      收藏:0      [点我收藏+]

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‘)))



 

python之高阶函数

原文:https://www.cnblogs.com/J-xiaowei/p/11574114.html

(1)
(1)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!