zoukankan      html  css  js  c++  java
  • 匿名函数

    匿名函数
    1,lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式。

    2,lambda是一个表达式而不是一个语句。它能够出现在Python语法不允许def出现的地方。

    3,作为表达式,lambda返回一个值(即一个新的函数)。lambda用来编写简单的函数,而def用来处理更强大的任务。

    4,常用于为map()和filter()之类共同使用。
    f = lambda x,y,z : x+y+z
    print f(1,2,3)

    g = lambda x,y=2,z=3 : x+y+z
    print g(1,z=4,y=5)

    输出结果为:
    6
    10

    5,map函数可以在序列中映射函数进行操作。例如:
    def inc(x):
    return x+10

    L = [1,2,3,4]
    print map(inc,L)

    print map((lambda x: x+10),L)

    输出结果为:
    [11, 12, 13, 14]
    [11, 12, 13, 14]

    6,列表解析可以实现map函数同样的功能,而且往往比map要快。例如:
    print [x**2 for x in range(10)]
    print map((lambda x: x**2), range(10))

    输出结果为:
    [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
    [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

    7,列表解析比map更强大。例如:
    print [x+y for x in range(5) if x%2 == 0 for y in range(10) if y%2 ==1]

    输出结果为:
    [1, 3, 5, 7, 9, 3, 5, 7, 9, 11, 5, 7, 9, 11, 13]

  • 相关阅读:
    MYSQL 注射精华
    MySQL数据库安全配置
    linux命令
    python异常处理、反射、socket
    random、面向对象编程
    序列化、常用模块以及面向对象基础
    python 装饰器、递归原理、模块导入方式
    python递归、collections系列以及文件操作进阶
    python基础
    python简介
  • 原文地址:https://www.cnblogs.com/liang545621/p/7523537.html
Copyright © 2011-2022 走看看