Python lambda表达式

一、句法

lambda arg1,arg2,······ : expression

二、解释
  • 在Python中,函数是一级公民,在Python中,函数是物件,它是function的实例,基本上都是使用def来定义的。它的返回值由expression计算得出

def 陈述句

def max(m, n):
    return m if m >n else n

print(max(10, 3))

上面的函数也可以使用lambda来定义

max = lambda m,n : m if m>n else n

print(max(10, 3))
三、示例
  • lambad 中的arg1、arg2等参数就相当于定义函数时的参数,可以在expression中使用这些参数。expression是运算式,不是陈述句,必须在:后面写运算式。

与字典配合实现类似switch语句

socre = int(input('请输入分数'))
level = score // 10
{
    10: lambda : print('S')
    9: lambda: print('A'),
    8: lambda: print('B'),
    7: lambda: print('C'),
    6: lambda: print('D')
}.get(level, lambda:print("E"))

把lambda当做value存入dict中,使用get来获取对应的等级,如果有符合的键,得出对应的等级,如若不然,就返回它的默认等级

你可能感兴趣的:(Python lambda表达式)