码迷,mamicode.com
首页 > 编程语言 > 详细

Python_00_lambda表达式

时间:2020-03-24 00:50:51      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:方法   war   接受   表达   ros   student   reverse   形式   code   

    1.应用场景:如果一个函数有一个返回值,并且只有用一句代码,可以使用lambda表达式简化。

    2.语法:lambda  参数列表:表达式

    3.lambda表达式的参数可有可无,函数的参数在lambda表达式中完全适用,lambda表达式能接受任何数量的参数但只能有一个返回值。

    4.lambda的简单例子:

# 函数的方法
def fn1():
    return 200


print(fn1())

# lambda表达式
fn2 = lambda :200
print(fn2())

运行结果:

技术图片

 

 

    5.lambda实现两个数字相加

fn1=lambda a,b:a+b
print(fn1(1,2))

技术图片

 

 

     6.lambda的参数形式

      1):无参数

fn1=lambda:100
print(fn1())

技术图片

 

       2):一个参数

fn1=lambda a:a
print(fn1("ass"))

技术图片

 

       3)默认参数

fn1=lambda a,b,c=100:a+b+c
print(fn1(1,2))
print(fn1(1,2,3))

技术图片

 

       4)可变参数*args,用来传不定长数据

fn1=lambda *args:args
print(fn1(1,2,3,4))

默认返回为元组

技术图片

 

       5)可变参数:*kwargs,用来传不定长字典

fn1=lambda **kwargs:kwargs
print(fn1(name="python",age=20))

技术图片

 

 

    7.带if的lambda表达式

fn1=lambda a,b:a if a>b else b
print(fn1(1,3))

技术图片

 

     8.字典数据的排序

 

students=[{name:Tom,age:2},{name:Rose,age:35},{name:Jack,age:30}]
# 按name值升序排列
students.sort(key=lambda x:x[name])
print(students)

# 按age值降序排列
students.sort(key=lambda x:x[age],reverse=True)
print(students)

技术图片

 

 

 

          

Python_00_lambda表达式

标签:方法   war   接受   表达   ros   student   reverse   形式   code   

原文地址:https://www.cnblogs.com/tkg1314/p/12555360.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!