精华内容
下载资源
问答
  • lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子:复制代码 代码如下:def f(x):return x**2print f(4)Python中使用lambda的话,写成这样复制代码 代码如下:g = lambda x : x**2print g(4) ...
  • 关于 python 函数的注解以及匿名函数的定义及其一些需要注意的问题。

    函数注解与匿名函数


    关于函数参数的定义,调用以及函数参数的内容,在下面的文章中已经做了初步的介绍,有需要的可以访问进行了解:

    Python 函数

    函数注解


    在编写函数,当下肯定清楚函数如何使用的。若是函数较为复杂,过段时间,编写者有可能需要花一段时间去重新了解函数的使用,那其他使用者也同样会遇到这样的困惑。

    所以当编写完函数后,可以为函数的参数添加一些额外的信息。这里给函数参数添加注解,能够提示程序员如何正确使用这个函数。如下示例:

    def add(x:int, y:int) -> int:
        '''Returns the sum of two numbers
        '''
        return x + y
    

    在这里,Python 解释器并不会对这些注解添加任何的语义(可能第三方工具和框架会)。它们并不会被类型检查,运行的时候跟没有添加注解前是没有任何差距的。但若是有需要的人阅读源码时,这些都能给阅读者提供帮助。同时会出现在文档里。

    >>> help(add)
    Help on function add in module __main__:
    
    add(x: int, y: int) -> int
        Returns the sum of two numbers
    

    函数注解只存储于函数的 __annotations__ 属性中。比如:

    >>> add.__annotations__
    {'x': <class 'int'>, 'y': <class 'int'>, 'return': <class 'int'>}
    

    注解的主要用途还是文档。Python 并没有类型声明,当阅读源码的时候,比较难知道传递什么样的参数给这个函数。这时候,注解就能够给阅读者更多的提示,能够让他们正确使用函数。

    匿名函数


    如何定义

    在前面提及的文章中,讲到了使用 def 定义一个函数。但若是函数能够单行实现,这个时候可以考虑使用匿名函数(lambda 表达式)来实现这种功能。

    当函数功能非常简单,仅仅只是计算一个表达式的值时,就可以用 lambda 表达式来替代。比如:

    >>> add = lambda x, y: x + y
    >>> add
    <function <lambda> at 0x0000021496CD98B8>
    >>> add(2, 3)
    5
    >>> add('hello', ' world')
    'hello world'
    

    其实使用 lambda 表达式跟下面的效果是一样的:

    >>> def add(x, y):
    ...     return x + y
    ...
    >>> add(2, 3)
    5
    >>> add('hello', ' world')
    'hello world'
    

    lambda 表达式主要运用的场景是排序或者数据 reduce:

    >>> pairs =  [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
    >>> sorted(pairs, key=lambda pair: pair[1])
    [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]
    

    上面的例子就是用于排序列表元素,以列表元素元组的第二个元素进行排序。此处的元组的第二个元素是字符串,关于字符串的比较,先比较字符串的首字符,首字符相同时,比较第二个字符,以此类推。

    在这里,fouronefo 排序更前,所以 four 排在 one 前面,threetwo 首字符相同,比较的是第二个字符 hw,所以 three 排在 two 前面。

    尽管 lambda 表达式能够定义简单函数,但其实是有限制的。只能指定单个表达式,它的值就是最后返回的值。即是不能包含其他的语言特性,包括多个语句、迭代以及异常处理等等。

    捕获变量值

    如何在定义匿名函数时捕获某些变量的值?现在,先看看以下示例代码的效果:

    >>> x = 10
    >>> a = lambda y: x+y
    >>> x = 20
    >>> b = lambda y: x+y
    

    在这里,先猜猜 a(10)b(10) 的结果?若觉得结果是 2030,那就错了:

    >>> a(10)
    30
    >>> b(10)
    30
    

    产生上面的结果,是因为 lambda 表达式中的 x 是一个自由变量,它是在运行的时候绑定值,而不是在定义的时候就绑定,这里跟函数的默认值参数定义是不同的。因此,在调用这个 lambda 表达式时, x 的值其实是执行时的值。例如:

    >>> x = 10
    >>> a(10)
    20
    >>> x = 20
    >>> b(10)
    30
    

    若是想在匿名函数在定义时就捕获值,可以将参数值定义为默认参数:

    >>> x=10
    >>> a = lambda y, x=x: x+y
    >>> x=20
    >>> b = lambda y, x=x: x+y
    >>> a(10)
    20
    >>> b(10)
    30
    

    还有一个需要注意: 假如想用循环或列表推导创建一个 lambda 表达式列表,期望函数能够在定义时就记住每次的迭代值。以下的写法是无法达到效果的:

    >>> func = [lambda x: x+n for n in range(5)]
    >>> for f in func:
    ...     print(f(0))
    ...
    4
    4
    4
    4
    4
    

    这里最终执行的结果,也是因为最终执行,n 的值其实是迭代的最后一个值。

    修改函数,使其达到想要达到的效果,也是上面提及的默认值的做法:

    >>> func = [lambda x, n=n: x+n for n in range(5)]
    >>> for f in func:
    ...     print(f(0))
    ...
    0
    1
    2
    3
    4
    

    现在使用默认值参数的形式,就能够实现在定义时绑定所需的值。

    参考资料


    来源

    [1] David M. Beazley;Brian K. Jones.Python Cookbook, 3rd Edtioni.O’Reilly Media.2013.
    [2] “4.7.6 Lambda Expressions”.docs.python.org.Retrieved 23 February 2020.


    以上就是关于 python 函数的注解以及匿名函数的定义及其一些需要注意的问题。


    展开全文
  • 匿名函数用lambda能够创建一个匿名函数,这种函数得名于省略了用def声明函数的标准步骤。语法lambda [arg1 [,arg2,.....argn]]:expression如何使用我们正常定义一个函数时是这样的def add(a,b):return a+b使用lambda...

    匿名函数

    用lambda能够创建一个匿名函数,这种函数得名于省略了用def声明函数的标准步骤。

    语法

    lambda [arg1 [,arg2,.....argn]]:expression

    如何使用

    我们正常定义一个函数时是这样的

    def add(a,b):

    return a+b

    使用lambda定义匿名函数是这样的

    add = lambda a,b:a+b # 和上面函数功能一样

    按正常的调用方式即可。lambda表达式能够接收任何数量的参数但只能返回一个表达式的值。

    用途

    1.就像上文所述能后够简化代码

    2.匿名函数作为参数传递

    作为自定义函数的参数传递

    def test(a, b, func):

    result = func(a, b)

    print(result)

    func_new = input("请输入一个匿名函数:")

    # eval()将字符串str当成有效的表达式来求值并返回计算结果。

    func_new = eval(func_new)

    test(11, 22, func_new)

    """

    输出结果:

    请输入一个匿名函数:lambda a,b:a+b

    33

    """

    作为内置函数的参数传递

    例如:将列表中的字典按照指定的关键字进行排序

    stus = [

    {"name":"zhangsan", "age":18},

    {"name":"lisi", "age":19},

    {"name":"wangwu", "age":17}

    ]

    stus.sort(key = lambda x:x['age'])

    for stu in stus:

    print(stu)

    """

    输出结果:

    {'name': 'wangwu', 'age': 17}

    {'name': 'zhangsan', 'age': 18}

    {'name': 'lisi', 'age': 19}

    """

    python 匿名函数与三元运算

    匿名函数 匿名函数就是不需要显示式的指定函数名 首先看一行代码: def calc(x,y): return x*y print(calc(2,3)) # 换成匿名函数 calc = lambda x ...

    python匿名函数与三元运算

    匿名函数 匿名函数就是不需要显示式的指定函数名 首先看一行代码: def calc(x,y): return x*y print(calc(2,3)) # 换成匿名函数 calc = lambda ...

    python 匿名函数的使用(并没有那么简单)

    以下为几种匿名函数的使用方式:x=[(lambda x:x**2)(x) for x in range(10)]print(x)y=[x**2 for x in range(10)]print(y)i ...

    Python匿名函数&lowbar;return语句

    Python匿名函数: 使用 lambda 关键字创建匿名函数: lambda 定义的函数只是一个表达式,而不是代码块 lambda 函数拥有自己的命名空间,不能够访问参数列表之外的 或 全局命名空间 ...

    Python lambda(匿名函数)介绍【转】

    引用: http://www.cnblogs.com/evening/archive/2012/03/29/2423554.html 在学习python的过程中,lambda的语法时常会使人感到困惑, ...

    python匿名函数(lambda)

    简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方 ...

    python匿名函数

    文章导读: 以前自己一直没搞明白Python中的匿名函数,现在拿这个问题基本上搞明白了,拿自己的理解整成一篇文章,附带大量例子,让其更加好理解. 在编程语言中,函数的应用: 1. 代码块重复,这时候必 ...

    python 匿名函数&amp&semi;内置函数

    匿名函数:为了解决那些功能很简单的需求而设计的一句话函数怎么定义匿名函数: cal = lambda x : x*x # cal是函数名,lambda是定义匿名函数的关键字 冒号前面的额x是参数即函数 ...

    python匿名函数 高阶函数 内置函数 文件操作

    1.匿名函数 匿名就是没有名字 def func(x,y,z=1): return x+y+z 匿名 lambda x,y,z=1:x+y+z #与函数有相同的作用域,但是匿名意味着引用计数为0,使用 ...

    随机推荐

    增强拉格朗日乘子法(Augmented Lagrange Method)

    增强拉格朗日乘子法的作用是用来解决等式约束下的优化问题, 假定需要求解的问题如下: minimize f(X) s.t.: h(X)=0 其中,f:Rn->R; h:Rn->Rm 朴素拉格 ...

    Cordova webapp实战开发:(5)如何写一个Andorid下自动更新的插件?

    在 中我们搭建好了开发环境,也给大家布置了调用插件的预习作业,做得如何了呢?今天我们来学一下如何自己从头建立一个And ...

    JVM学习笔记(四)------内存调优【转】

    转自:http://blog.csdn.net/cutesource/article/details/5907418 版权声明:本文为博主原创文章,未经博主允许不得转载. 首先需要注意的是在对JVM内 ...

    JS全局屏蔽回车事件

    window.onload = function (){ document.body.οnkeydοwn=function(event){ if(event.keyCode==13){ event.k ...

    unity3d设置3D模型显示在2D背景之前&lpar;多个相机分层显示&rpar;&lpar;转&rpar;

    解决步骤: 1.添加一个摄像机,命名为BackgroundCamera,然后在Layer添加一个background层.并且将plane拖放到改相机节点下. 然后将BackgroundCamera和P ...

    PHP 中的BOM BUG

    对于PHP,一个小小让我不敢置信的事情很多,包括引用变量哪么迟钝,普通变量哪么牛B我己经很意外,甚至现在竟然出现了BOM头的BUG. 在PHP中,会引用很多小文件,include或require,哪么 ...

    Oracle硬解析,软解析,软软解析介绍

    Oracle数据库中的CURSOR分为两种类型:Shared Cursor 和 Session Cursor 1,Shared Cursor Oracle里的第一种类型的Cursor就是Shared ...

    Go 用JSON加载表格数据

    支持热重载reload,但会有一些问题,下面注释有写 package table import ( "runtime/debug" ) //IntArray int类型数组 typ ...

    展开全文
  • Python匿名函数lambda的使用

    千次阅读 2018-08-11 14:51:58
    1. python用lambda表达式来构建匿名函数,所谓匿名没有def定义了。 2.lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去,比较简单。 3.语法格式:函数名=lambda arg1 ,arg2...

    匿名函数lambda:是指一类无需定义标识符(函数名)的函数或子程序

    1.匿名函数lambda要点

    1. python用lambda表达式来构建匿名函数,所谓匿名没有def定义了。

    2.lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去,比较简单。

    3.语法格式:函数名=lambda arg1 ,arg2,.....argn:expression

    2.lambda表达式的用法

    1.写一个求两个数之和的lambda表达式

    sum1 = lambda arg1, arg2: arg1 + arg2
    p1 = lambda v1 ,v2 ,v3 :print(v1+v2+v3)
    #调用sum函数
    print(sum1(1,2))
    p1("11","22","bb")
    =============================
    结果如下:
    3
    1122bb

    2.lambda表达式只能封装一些简单的逻辑,不能封装一个代码块,否则报错

    p2 = lambda a,b:( #报错,不能封装代码块,lambda表达式只能是一个,一个,一个。
    print(a)
    print(b)
    

    3.上面的用法一般函数也可以实现,那为什么还要有lambda表示式呢?

      3.1. 下面才是lambda真正的大用处,比如对字典类型进行排序

    studentInfo = [
        {"name":"tom", "age":18},
        {"name":"sherry", "age":19},
        {"name":"rose", "age":17},
        {"name":"hellen","age":20},
        {"name": "hero", "age": 15}
    ]
    
    #1.给学生信息按姓名排序
    #studentInfo.sort()  #报错,字典无法直接排序
    studentInfo.sort(key=lambda x:x["name"])
    print(studentInfo)
    '''结果如下:
    [{'age': 20, 'name': 'hellen'}, {'age': 15, 'name': 'hero'},
     {'age': 17, 'name': 'rose'}, {'age': 19, 'name': 'sherry'}, {'age': 18, 'name': 'tom'}]
    '''
    #2.给学生信息按年龄排序
    studentInfo.sort(key=lambda x:x["age"])
    print(studentInfo)
    '''
    [{'age': 15, 'name': 'hero'}, {'age': 17, 'name': 'rose'}, {'age': 18, 'name': 'tom'}, 
    {'age': 19, 'name': 'sherry'}, {'age': 20, 'name': 'hellen'}]
    '''

     3.2.比如讲lambda表示式作为参数使用,动态计算

    #3.匿名函数当成参数动态传入
    def lambda_test(arg1,arg2,func):  #定义一个函数,将另一个函数当如参数传给这个函数
        result = func(arg1,arg2)      #在函数内部调用传进来的函数
        return result
    #3.1调用lambda_test函数
    a=lambda_test(3,8,lambda x,y:x+y)
    print(a)
    ==========================================================
    24
    ==========================================================
    
    #3.2升级版调用lambda_test函数
    fc=input("请输入匿名函数:")
    #fc = eval(fc) #python3默认输出都是字符串,要想转换之前的样子,用eval.python2这里不需要
    a=lambda_test(3,8,fc)
    print(a)
    ==========================================================
    请输入匿名函数:lambda x,y:x*y -10
    14

    统一声明:关于原创博客内容,可能会有部分内容参考自互联网,如有原创链接会声明引用;如找不到原创链接,在此声明如有侵权请联系删除哈。关于转载博客,如有原创链接会声明;如找不到原创链接,在此声明如有侵权请联系删除哈。

    展开全文
  • Python中, 匿名函数意味着函数没有名称。我们已经知道定义关键字用于定义常规功能, lambda关键字用于创建匿名函数。它具有以下语法: 语法 lambda arguments : expression 此函数可以有任意数量的参数, ...

    在Python中, 匿名函数意味着函数没有名称。我们已经知道定义关键字用于定义常规功能, lambda关键字用于创建匿名函数。它具有以下语法:

    语法

    lambda arguments : expression
    • 此函数可以有任意数量的参数, 但只能有一个表达式, 该表达式将被求值并返回。
    • 可以在需要函数对象的任何地方免费使用lambda函数。
    • 你需要知道, lambda函数在语法上仅限于单个表达式。
    • 除了函数中的其他类型的表达式外, 它在编程的特定领域还具有多种用途。

     

    范例1:

    # Python program to demonstrate
    # lambda functions
      
      
    string = 'lsbin'
      
    # lambda returns a function object
    print ( lambda string : string)

    输出如下

    <function <lambda> at 0x7f268eb16f28>

    在上面的示例中, lambda不是由打印函数调用的, 而只是返回函数对象及其存储位置。

    因此, 要使打印件首先打印字符串, 我们需要调用lambda, 以便使字符串能够通过打印件。

     

    范例2:

    # Python program to demonstrate
    # lambda functions
      
      
    x = "lsbin"
      
    # lambda gets pass to print 
    ( lambda x : print (x))(x)

    输出如下

    lsbin

    范例3:Lambda与普通函数调用之间的区别

    # Python program to illustrate cube of a number  
    # showing difference between def() and lambda().
      
      
    def cube(y): 
         return y * y * y; 
        
    g = lambda x: x * x * x 
    print (g( 7 )) 
        
    print (cube( 5 ))

    输出如下

    343
    125

    范例4:在函数内部使用时, lambda函数会变得更加有用。

    # Python program to demonstrate
    # lmabda functions
      
      
    def power(n):
         return lambda a : a * * n
      
    # base = lambda a : a**2 get 
    # returned to base
    base = power( 2 )
      
    print ( "Now power is set to 2" )
      
    # when calling base it gets 
    # executed with already set with 2
    print ( "8 powerof 2 = " , base( 8 ))
      
    # base = lambda a : a**5 get 
    # returned to base
    base = power( 5 )
    print ( "Now power is set to 5" )
      
    # when calling base it gets executed
    # with already set with newly 2
    print ( "8 powerof 5 = " , base( 8 ))

    输出如下

    Now power is set to 2
    8 powerof 2 =  64
    Now power is set to 5
    8 powerof 5 =  32768

    我们也可以使用地图()方法, 这不仅是一种快速而且高效的方法, 我们还可以看看如何在过滤().

    范例5:filter()和map()

    # Python program to demonstrate
    # lambda functions inside map()
    # and filter()
      
      
    a = [ 100 , 2 , 8 , 60 , 5 , 4 , 3 , 31 , 10 , 11 ]
      
    # in filter either we use assignment or 
    # conditional operator, the pass actual 
    # parameter will get return
    filtered = filter ( lambda x: x % 2 = = 0 , a) 
    print ( list (filtered))
      
    # in map either we use assignment or
    # conditional operator, the result of 
    # the value will get returned
    maped = map ( lambda x: x % 2 = = 0 , a) 
    print ( list (maped))

    输出如下

    [100, 2, 8, 60, 4, 10]
    [True, True, True, True, False, True, False, False, True, False]

    更多Python开发技术相关内容请参考:lsbin - IT开发技术https://www.lsbin.com/

    查看以下更多Python相关的内容:

    展开全文
  • Python学习:匿名函数,简约不简单

    千次阅读 2020-09-04 16:26:22
    Python中,除了常规函数,你应该也会在代码中见到一些“非常规”函数,它们往往很简短,就一行,并且有个很酷炫的名字——lambda,没错,这就是匿名函数。 一、匿名函数基础 首先,什么是匿名函数呢?以下是匿名...
  • 匿名函数在实际工作中同样举足轻重,它们往往很简短,就一行,并且有个很酷炫的名字——lambda。正确地运用匿名函数,能让我们的代码更简洁、易读。 匿名函数基础 匿名函数的关键字是 lambda,之后是一系列的参数,...
  • Python 之父为什么嫌弃 lambda 匿名函数

    千次阅读 多人点赞 2020-09-20 21:52:19
    ????“Python猫” ,一个值得加星标的公众号Python 支持 lambda 匿名函数,其扩展的 BNF 表示法是lambda_expr ::= "lambda"...
  • 这篇文章主要介绍了Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法,结合实例形式分析了Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数相关功能、原理与使用技巧,...
  • 匿名函数这是指在python中使用lambda来创建函数,我们称之为匿名函数 匿名函数不在使用def来进行创建,而是使用lambda关键字来创建一个形式主义的函数 无参无返回值: lambda : 单行表达式或者函数调用 无参有返回值: ...
  • python匿名函数

    2020-02-06 22:13:51
    lambda 表达式,又称匿名函数,常用来表示内部仅包含 1 行表达式的函数。如果一个函数的函数体仅有 1 行表达式,则该函数就可以用 lambda 表达式来代替。 二、语法 name = lambda [list] : 表达式 其中,定义...
  • 文章目录匿名函数00. 概述01. 用法举例03. lambda与map函数写在最后的话: 这里是一段防爬虫文本,请读者忽略。 本文原创首发于CSDN,作者IDYS 博客首页:https://blog.csdn.net/weixin_41633902/ 本文链接:...
  • Python map()函数 map()函数是对一个序列做相同的函数运算之后,返回一个map对象,简单来说就是输入一个序列,返回一个计算好的序列结果 语法 参数:function就是希望...匿名函数lambda 外意是没有名字的函数,本身是
  • python匿名函数lambda

    2019-12-20 00:38:36
    python匿名函数lambda 第一部分:匿名函数的简单实用 1.先自定义一个简单的函数 def func(a,b) print("a+b=%s" % (a+b)) func(1,2) # 结果:a+b=3 2.定义一个匿名函数 lam = lambda x , x + y result = lam(1,2) ...
  • lambda:Python匿名函数

    万次阅读 2017-03-28 22:18:33
    lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子:def f(x):  return x**2 print f(4) Python中使用lambda的话,写成这样g = lambda x : x**2 print g(4) lambda表达式在很多编程语言都有...
  • 浅析Python匿名函数

    2020-12-30 17:17:50
    匿名函数不需要显示地定义函数名,使用【lambda + 参数 +表达式】的方式,即: 也就是说,lambda用来表示匿名函数,可以传入多个参数,但只能有一个表达式。 下图可以看出匿名函数的独特之处: 比方说,我要写一个...
  • 1、匿名函数基础 匿名函数的格式:关键字 lambda,之后是一系列的参数,然后用冒号隔开,最后则是由这些参数组成的表达式。 lambda argument1, argument2,... argumentN : expression 1.1 案例:x的平方 # ...
  • 接下来继续Python的函数之旅,一起学习这个简约而不简单的匿名函数 一、匿名函数基础 首先,什么是匿名函数呢? 1.1 匿名函数的格式 以下是匿名函数的格式: lambda argument1, argument2,... argumentN : ...
  • 介绍Python中的lambda匿名函数
  • Python中,如果要声匿名函数,则需要使用lambda关键字 使用lambda声明的匿名函数能接收任何数量的参数,但只能返回一个表达式的值。 匿名函数不能直接调用priht(),因为lambda需要一个表达式。 匿名函数用处: 当...
  • Python匿名函数lambda

    2018-06-05 21:30:58
    Python匿名函数lambda语法格式:lambda args: expression args:以逗号分隔的参数列表 expression:用到args中各参数的表达式lambda语句定义的代码必须是合法的表达式,不能出现多条件语句,(可使用if的三元表达式...
  • Python的lambda匿名函数

    2016-05-12 17:59:12
    lambda函数也叫匿名函数,即,函数没有具体的名称。先来看一个最简单例子: def f(x): return x**2 print f(4) Python中使用lambda的话,写成这样 g = lambda x : x**2 print g(4)   lambda...
  • 1.匿名函数: (在早期python中,是没有办法实现匿名的,因为:python是一个严格缩进的语言。) 适用于:函数简单,可以使用lambda函数,否则不建议使用。 在这里print_msg(msg)函数作为参数在test02()函数中,...
  • Python将一些常用的功能封装成了一个一个的函数,可以拿来即用,这些函数就称为内置函数,到目前为止python提供的内置函数一共是68个。 常用内置函数 函数名 描述 语法 abs() 绝对值 abs(数字) filter() ...
  • 匿名函数 用lambda能够创建一个匿名函数,这种函数得名于省略了用def声明函数的标准步骤。 语法 lambda [arg1 [,arg2,.....argn]]:expression 如何使用 我们正常定义一个函数时是这样的 def add(a,b): return a+b...
  • 本文的文字及图片来源于网络,仅供学习、交流使用,不具有...匿名函数 前言 上次咱们基本说了一下函数的定义及简单使用,Python中的基本函数及其常用用法简析,现在咱们整点进阶一些的。同样都是小白,咱也不知道实际需要
  • 5、匿名函数 6、递归函数 01 函数概述 为什么需要函数? 如果在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块组织为一个小模块,这就是函数. 我们已经接触过多...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,526
精华内容 2,610
关键字:

匿名函数python用处

python 订阅