zoukankan      html  css  js  c++  java
  • map,reduce高阶函数

    iterator:迭代器

    python的iterator是一个惰性序列(即你不主动去遍历它,他不会去计算其中元素的值)

    m是一个iterator,所以通过tuple()函数让整个序列计算出来,并返回一个元组。

    def f(x):
        return x*x
    m = map(f,[1,2,3,4,5])
    print(tuple(m))
    

    map函数作为一个高阶函数,可以更快,更方便的对一些函数进行处理。 map函数接受的函数作用于列表里的每个元素。

    print(list(map(str,[1,2,3,4,5]))) #列表里的元素转成字符串
    
    print(list(map(abs,[1,2,-2,-3,-6])))
    

    对一个序列求和,可用reduce。

    from functools import reduce
    def func(x,y):
        return x+y
    print((reduce(func,[1,2,3,4,5,6])))
    

     

    from functools import reduce
    def func(x,y):
        return x*10+y
    print((reduce(func,[1,2,3,4,5,6])))   #结果为123456
    

      

     

      

     

  • 相关阅读:
    Tinkoff Challenge
    Uva 12298 超级扑克2
    BZOJ 1031 字符加密
    HDU 4944 逆序数对
    51nod 1215 数组的宽度
    LA 3126 出租车
    LA 3415 保守的老师
    51nod 1275 连续子段的差异
    Uva 11419 我是SAM
    LA 4043 最优匹配
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/8568376.html
Copyright © 2011-2022 走看看