码迷,mamicode.com
首页 > 其他好文 > 详细

lambda 函数的用法

时间:2017-12-27 19:41:55      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:接受   函数的参数   bsp   print   lambda函数   参数传递   返回   加法   span   

lambda函数又叫匿名函数, 匿名函数就是没有名字的函数,不使用def语句声明的函数。如果要声名,则需要使用lambda关键字进行声明。

一般用来定义简单的函数。

1.声明一个简单的加法匿名函数:

冒号前面的为函数的参数, 后面为函数的表达式, lambda函数可以接受任何数量的参数, 但只能返回一个表达式的值

1 1 1 _sum = lambda num1, num2: num1 + num2
2 2 2 print(和为:, _sum(1, 2))
3 3 3 print(和为:, _sum(2, 3))
4 4 # 和为: 3
5 5 # 和为: 5

 

2.将匿名函数当做参数传递:

 1 def fun(a, b, opt):
 2     print(a = %d % a)
 3     print(b = %d % b)
 4     print(res = %d % opt(a, b))
 5 
 6 
 7 fun(100, 200, lambda x, y: x + y)
 8 fun(100, 200, lambda x, y: y - x)
 9 # a = 100
10 # b = 200
11 # res = 300
12 # a = 100
13 # b = 200

3.当做内置函数的参数使用:

1 stu = [
2     {"name": alen, age:18},
3     {"name": clen, age:19},
4     {"name": dlen, age:20},
5     {"name": blen, age:21},
6 ]
7 stu.sort(key=lambda x :x[age], reverse=True)  # reverse 默认为false, 表示正序, true为倒序
8 print(stu)
9 # [{‘name‘: ‘blen‘, ‘age‘: 21}, {‘name‘: ‘dlen‘, ‘age‘: 20}, {‘name‘: ‘clen‘, ‘age‘: 19}, {‘name‘: ‘alen‘, ‘age‘: 18}]

 

lambda 函数的用法

标签:接受   函数的参数   bsp   print   lambda函数   参数传递   返回   加法   span   

原文地址:https://www.cnblogs.com/logn2/p/8127211.html

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