Python匿名函数及应用示例

yipeiwu_com5年前Python基础

本文实例讲述了Python匿名函数及应用。分享给大家供大家参考,具体如下:

lambda关键词能创建?型匿名函数。这种函数得名于省略了def声明函数的标准步骤。

代码如下:

#定义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程序设计有所帮助。

相关文章

关于ZeroMQ 三种模式python3实现方式

关于ZeroMQ 三种模式python3实现方式

ZeroMQ是一个消息队列网络库,实现网络常用技术封装。在C/S中实现了三种模式,这段时间用python简单实现了一下,感觉python虽然灵活。但是数据处理不如C++自由灵活。 Req...

python代码实现逻辑回归logistic原理

python代码实现逻辑回归logistic原理

Logistic Regression Classifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数。 优点:计算代价不高,易于...

python方法生成txt标签文件的实例代码

python方法生成txt标签文件的实例代码

1、如果想要利用代码(不论是python、c++、亦或是matlab)实现生成标签文件,首先,也是灰常重要的一件事就是你的图片集一定要是有规律的命名。数字字母顺序排开。这一点非常重要,相...

python中tkinter的应用:修改字体的实例讲解

python中tkinter的应用:修改字体的实例讲解

参考链接:tkinter book font字体的参数有如下6个 family: 字体类别,如'Fixdsys' size: 作为一个整数,以点字体的高度。为了获得字体的n个像素高,使用...

基于Python执行dos命令并获取输出的结果

这篇文章主要介绍了基于Python执行dos命令并获取输出的结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 import os...