• Python 知识要点:lambda函数


    lambda函数也叫匿名函数,函数没有具体的名称。

    语法:lambda argument_list: expression

    • argument_list是参数列表,相当于函数定义中的参数列表 def(a, b=1, *args, **kwargs)
    • expression是关于参数的表达式。相当于函数中的函数体,并且表达式只能是单行的,可以为None

    部分Python内置函数接收函数作为参数

    filter函数。此时lambda函数用于指定过滤列表元素的条件。
    print(list(filter(lambda x: x % 3 == 0, [1, 2, 3])))
    指定将列表[1,2,3]中能够被3整除的元素过滤出来,
    结果是[3]。
    注意:在python3中,filter, map, zip等返回可迭代的对象,返回的仅仅是一个元素,并不是一个列表,所以结果前需要使用 list
     
    sorted函数。此时lambda函数用于指定对列表中所有元素进行排序的准则。
    print(sorted([1, 2, 3, 4, 5, 6, 7, 8, 9], key=lambda x: abs(5-x)))
    将列表[1, 2, 3, 4, 5, 6, 7, 8, 9]按照元素与5距离从小到大进行排序,
    结果是[5, 4, 6, 3, 7, 2, 8, 1, 9]。

    map函数。此时lambda函数用于指定对列表中每一个元素的共同操作。
    print(map(lambda x: x+1, [1, 2,3]))
    将列表[1, 2, 3]中的元素分别加1,
    结果是[2, 3, 4]。

    reduce函数。此时lambda函数用于指定列表中两两相邻元素的结合条件。
    from functools import reduce
    print(reduce(lambda a, b: '{}, {}'.format(a, b), [1, 2, 3, 4, 5]))
    将列表 [1, 2, 3, 4, 5]中的元素从左往右两两以逗号分隔的字符的形式依次结合起来,
    结果是'1, 2, 3, 4, 5'。
    注意:reduce()函数在python2是内置函数,从python3开始移到了 functools 模块。
     
    https://www.jianshu.com/p/039756507e95
  • 相关阅读:
    windows下查看端口占用情况及关闭相应的进程
    python学习中的一些“坑”
    python 中一些关键字的区别
    linux下配置Tomcat开机启动
    windows 下的python 安装pycrypto
    'redis-server' 不是内部或外部命令,也不是可运行的程序或批处理文件
    怎么学习代码
    crx文件不能安装,提示无效的安装包
    回调函数
    koa-router的作用
  • 原文地址:https://www.cnblogs.com/dc2019/p/13512882.html
Copyright © 2020-2023  润新知