zoukankan      html  css  js  c++  java
  • python学习笔记(十三)之lambda表达式

    lambda表达式:

      用法 lambda x : 2 * x + 1

      其中:前面是参数,后面是返回值。

     1 >>> def ds(x):
     2 ...     return 2 * x + 1
     3 ... 
     4 >>> ds(5)
     5 11
     6 >>> lambda x : 2*x+1
     7 <function <lambda> at 0x7fb02a635ea0>
     8 >>> g = lambda x : 2*x+1
     9 >>> g(2)
    10 5
    11 >>> def add(x,y):
    12 ...     return x + y
    13 ... 
    14 >>> add(4,5)
    15 9
    16 >>> g = lambda x,y = x + y
    17   File "<stdin>", line 1
    18     g = lambda x,y = x + y
    19                          ^
    20 SyntaxError: invalid syntax
    21 >>> g = lambda x,y : x+y
    22 >>> g(4,5)
    23 9
    View Code

    lambda表达式作用:

    1. 是代码更加简洁
    2. 不需要命名
    3. 简化代码的可读性,阅读时无需调到def定义部分。

    filter()方法

      filter(function or None, iterable) -->filter object

      当第一个参数为None时,返回iterable中为True的对象,当第一个参数部位None时,返回使函数返回True的iterable中的对象。

    1 >>> list(filter(None, [True,1,0,False]))
    2 [True, 1]
    3 >>> list(filter(lambda x : x % 2, range(10)))
    4 [1, 3, 5, 7, 9]
    View Code

    map()方法

      map(func, *iterables)

      将后面的参数通过func进行一次迭代处理。  

    1 >>> list(map(lambda x:2 * x, range(10)))
    2 [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
    View Code
  • 相关阅读:
    jquery动画,获取,添加
    javac3p0连接池
    jquery尺寸
    jquery遍历
    jquery删除,停止,获取设置css,设置内容和属性,过滤
    javajdbc(数据库的添加,删除,修改,更新)
    博客开通
    很久每有来空来了,一些最近的想法
    竖线的显示
    一个小问题,c++
  • 原文地址:https://www.cnblogs.com/ZGreMount/p/7763699.html
Copyright © 2011-2022 走看看