look321 发表于 2018-8-14 11:39:16

python中的reduce、lambda函数

  Python中的reduce
  python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。
  如:
  def myadd(x,y):
  return x+y
  sum=reduce(myadd,(1,2,3,4,5,6,7))
  print sum
  #结果就是输出1+2+3+4+5+6+7的结果即28
  当然,也可以用lambda的方法,更为简单:
  sum=reduce(lambda x,y:x+y,(1,2,3,4,5,6,7))
  print sum
  lambda实例补充:
  func = lambda a: a+1
  #创建形式参数a
  #创建函数内容a+1,并且把结果return
  ret = func(99)
  print(ret)
  输出内容:100
  注意:在python 3.0.0.0以后, reduce已经不在built-in function里了, 要用它就得from functools import reduce.
页: [1]
查看完整版本: python中的reduce、lambda函数