zoukankan      html  css  js  c++  java
  • pyhton中map和reduce

    from functools import reduce
    import numpy as np
    '''
    reduce[function, sequence[, initial]]使用
    1、function:是一个有两个参数的函数,reduce依次从sequence中取一个元素,和上一次调用function的结果做参数再次调用function
    2、如果设置initial参数,会以sequence中的第一个元素和initial作为参数调用function。
    '''
    # 不设置initial
    def reduce1():
        result = reduce(lambda x, y: x+y, [1, 3, 5, 7, 9])
        print('无initial:', result)
    def reduce2():
        result = reduce(lambda x, y: x + y, [1, 3, 5, 7, 9],100)
        print('有initial:', result)
    
    '''
        map(function, sequence[, sequence, ...]) -> list
        第一个参数是函数,剩下是一个或多个序列,返回一个集合
        1、存在多个序列,会依次以每个序列中相同位置的元素做参数调用function函数
    '''
    def map1():
        array = np.arange(1,4)
        print('array:', array)
        result = map(lambda  x: x**2, array)
        for index,value in enumerate(result):
            print( value)
    def map2():
        array1 = np.arange(1,5)
        array2 = np.arange(5,10)
        print('array1:', array1)
        print('array2:', array2)
        result = map(lambda x, y: x + y, array1, array2)
        for index, value in enumerate(result):
            print(value)
    if __name__ == '__main__':
        print('-----------------reduce-----------')
        reduce1()
        reduce2()
        print('---------------map-----------------')
        map1()
        print('多个序列')
        map2()
  • 相关阅读:
    使用ConcurrentHashMap需要知道的细节
    并查集(Union-Find)
    LeetCode2
    补充之前博客的几种排序--希尔排序、堆排序、归并排序
    左式二叉堆
    优先队列的一种实现--堆ADT
    开放地址法散列表ADT
    分离链表法散列ADT
    AVL树
    二叉查找树ADT--C语言描述
  • 原文地址:https://www.cnblogs.com/peixu/p/8026844.html
Copyright © 2011-2022 走看看