zoukankan      html  css  js  c++  java
  • Python lambda map filter reduce

    lambda可以理解为一个小的匿名函数,lambda函数可以使用任意数量的参数,但只能有一个表达式
    模板: lambda argument: manipulate(argument)
    参数:argument就是这个匿名函数传入的参数,冒号后面是我们对这个参数的操作方法
    numbers = [1,2,3,4,5]
    add_one = list(map(lambda n:n + 1,numbers))
    print(list(add_one))
    [2, 3, 4, 5, 6]


    map()
    map()函数的主要作用是可以把一个方法依次执行在一个可迭代的序列上,比如List等,具体的信息如下:

    基础语法:map(fun, iterable)
    参数:fun是map传递给定可迭代序列的每个元素的函数。iterable是一个可以迭代的序列,序列中的每一个元素都可以执行fun
    返回值:map object

    nums = [3,"23",-2]
    print(list(map(float,nums)))

    Out: [3.0, 23.0, -2.0]

    filter()

    filter()方法借助于一个函数来过滤给定的序列,该函数测试序列中的每个元素是否为真。

    基础语法:filter(fun, iterable)
    参数:fun测试iterable序列中的每个元素执行结果是否为True,iterable为被过滤的可迭代序列
    返回值:可迭代的序列,包含元素对于fun的执行结果都为True
    要先有一个能返回True或者False的方法,或者表达式作为过滤条件就行了
    简而言之就是filter可以帮助我们根据给出的条件过滤一组数据并返回结果
    def fun(variable):
    letters = ['a','e','i','o','u']
    if (variable in letters):
    return True
    else:
    return False
    sequence = ['I','l','o','v','e','p','y','t','h','o','n']
    filtered = list(filter(fun,sequence))
    print(filtered)
    sequence = ['I','l','o','v','e','p','y','t','h','o','n']
    result = filter(lambda x: x in ['a','e','i','o','u'],sequence)
    print(list(result))
    ['o', 'e', 'o']
    reduce()
    Reduce是一个非常有用的函数,用于在列表上执行某些计算并返回结果。它将滚动计算应用于列表中的连续值。例如,如果要计算整数列表的累积乘,或者求和等等

    基础语法:reduce(function, iterable)
    参数:fun是连续作用于iterable每一个元素的方法,新的参数为上一次执行的结果,iterable为被过滤的可迭代序列
    返回值:最终的function返回结果
    from functools import reduce
    numbers = [1,2,3,4]
    result_multiply = reduce(lambda x,y:x * y,numbers)
    result_add = reduce(lambda x,y:x + y,numbers)
    print(result_multiply)
    print(result_add)
    24
    10

  • 相关阅读:
    git
    代理上网时git不能直接连接远程库的解决办法
    Python程序练习2--模拟三级菜单
    python os模块常用文件操作方法
    Python程序练习1-模拟用户登录验证
    牛牛牛图片胡乱下载
    oozie 4.1.0与4.2.0版本问题BUG
    hbase 协处理器,实现group by,distinct函数
    Js公共操作类 之 String 扩展方法介绍(一)
    CSS3之伪元素选择器和伪类选择器
  • 原文地址:https://www.cnblogs.com/songyuejie/p/11833927.html
Copyright © 2011-2022 走看看