美文网首页
python——匿名函数

python——匿名函数

作者: H木槿 | 来源:发表于2019-06-04 14:44 被阅读0次

    将4种类型的函数转变成匿名函数:

    在编程语言中,函数的应用:

    1. 代码块重复,这时候必须考虑用到函数,降低程序的冗余度

    2. 代码块复杂,这时候可以考虑用到函数,降低程序的可读性

    在Python,有两种函数一种是 def 定义一种是 lambda 函数

    lambda函数的语法只包含一个语句

    lambda匿名函数 格式如下:

    lambda 形参:表达式(返回值,输出语句)

    解释:lambda 后面跟形参冒号后面跟表达式,表达式又包含返回值或输出语句,有返回值就用返回值,无返回值就用输出语句。


    案例1:将一个有参数有返回值的函数改变成匿名函数

    def add2num(a,b):        # 定义一个有参数的函数

              return a+b           # 有返回值  返回一个a+b

    print(add2num(1,2))     # 使用add2num()调用执行,并上传实参,

                                         # 因有形参必要有实参,因有返回值必须用print()输出

                                         # 以下是改变为匿名函数

    f =lambda  a,b:a+b      # 使用lambda函数 后面跟参数为a、b,

                                        # :冒号后面跟返回值a+b,定义一个F变量来接收

    print(f(1,2))                  # 使用F()来执行,因有返回值所以要用print()输出


    案例2:将一个有参数无返回值的函数改变成匿名函数

    def add2num(a,b):               # 定义一个有参数的函数

           print(a+b)                      # 无返回值直接输出两个形参数相加

    add2num(1,2)                      # 调用,没有返回值直接调用即可

                                                # 以下是改变为匿名函数

    f =lambda  a,b:print(a+b)     # 使用lambda函数 后面跟参数为a、b,

                                                # :冒号后跟输出语句,定义一个F变量来接收

    f(1,2)                                    # 用F()执行,传参有几个形参就传几个实参。


    案例3:将一个无参数有返回值的函数改变成匿名函数

    def add2num():           # 定义一个无参数的函数

            return 100           # 返回一个100

    print(add2num())         # add2num()调用,因无形参也不必定义上传实参,

                                        # 因有返回值所以必须用print()输出

                                        # 以下是改变为匿名函数

    f =lambda  :100           # 使用lambda函数 后面跟参数没有就空着

                                        # :冒号后面跟返回值,定义一个F变量来接收

    print(f())                       # 使用F()来执行,因有返回值用print()输出。


    案例4:将一个无参数无返回值的函数改变成匿名函数

    def add2num():                 # 定义一个无参数的函数

            a =1                          # 定义变量a=1

            b =2                          # 定义变量b=2

            print(a+b)                  # 输出两个变量之和

    add2num()                        # 调用,无形餐也不用传实参

                                              # 以下是改变为匿名函数

    f =lambda :print(1+2)        # 使用lambda函数 后面跟参数没有就空着

                                             # :冒号后面跟输出语句(直接传参)

    f()                                     # f()执行


    相关文章

      网友评论

          本文标题:python——匿名函数

          本文链接:https://www.haomeiwen.com/subject/lqjlxctx.html