本文实例讲述了Python匿名函数及应用。分享给大家供大家参考,具体如下:
lambda关键词能创建"htmlcode">
#定义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相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。