如何在Python中应用匿名函数?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
#定义lambda函数 sum = lambda arg1,arg2:arg1+arg2 #调用函数 totle = sum(3,5) print ('totle = %d'%totle)
运行如下
totle = 8
Lambda函数能接收任何数量的参数但只能返回一个表达式的值
匿名函数不能直接调用print,因为lambda需要一个表达式.
应用场景:函数作为参数传递
1. 自定义函数
#定义函数 def myFunc(num1,num2,option): print('num1 = %d'%num1) print('num2 = %d'%num2) print('num1 + num2 = %d'%option(num1,num2)) #调用函数 myFunc(3,5,lambda x,y:x+y)
运行如下:
num1 = 3
num2 = 5
num1 + num2 = 8
2. 作为内置函数的参数
#coding=utf-8 #定义一个列表,列表中的元素是字典 stus = [{'name':'xiaoming','age':18}, {'name':'xiaohong','age':19}, {'name':'xiaoxue','age':17}] #实现列表中的元素按name排序 stus.sort(key = lambda x:x['name']) print('列表中的元素按name排序:', stus) #实现列表中的元素按age排序 stus.sort(key = lambda x:x['age']) print('列表中的元素按age排序:', stus)
运行结果如下:
列表中的元素按name排序:
[{'name': 'xiaohong', 'age': 19},
{'name': 'xiaoming', 'age': 18},
{'name': 'xiaoxue', 'age': 17}]
列表中的元素按age排序:
[{'name': 'xiaoxue', 'age': 17},
{'name': 'xiaoming', 'age': 18},
{'name': 'xiaohong', 'age': 19}]
关于如何在Python中应用匿名函数问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。