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程序设计有所帮助。
相关推荐
-
Python3匿名函数lambda介绍与使用示例
概述 匿名函数,顾名思义即没有名称的函数,和def定义的函数的最大区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值),表达式本身结果就是返回值,而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式: lambda arg1,arg2,.....argn:expression 以下为一些lambda的特点: lambda 是一个表达式,而不是一个语句,即我们可以在任何可以使用表达式的场景一样使用l
-
python ---lambda匿名函数介绍
lambda特性:"一个语法,三个特性,四个用法" 一个语法 在Python中,lambda的语法是唯一的.其形式如下: lambda argument_list: expression 其中,lambda是Python预留的关键字,argument_list和expression由用户自定义.具体介绍如下. 1.这里的argument_list是参数列表.它的结构与Python中函数(function)的参数列表是一样的.具体来说,argument_list可以有非常多的形式.例如:
-
基于python内置函数与匿名函数详解
内置函数 Built-in Functions abs() dict() help() min() setattr() all() dir() hex() next() slice() any() divmod() id() object() sorted() ascii() enumerate() input() oct() staticmethod() bin() eval() int() open() str() bool() exec() isinstance() pow() super
-
Python的lambda匿名函数的简单介绍
lambda函数也叫匿名函数,即,函数没有具体的名称.先来看一个最简单例子: 复制代码 代码如下: def f(x):return x**2print f(4) Python中使用lambda的话,写成这样 复制代码 代码如下: g = lambda x : x**2print g(4) lambda表达式在很多编程语言都有对应的实现.比如C#: 复制代码 代码如下: var g = x => x**2Console.WriteLine(g(4)) 那么,lambda表达式有什么用处呢?很多人提
-
Python之lambda匿名函数及map和filter的用法
现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}] t1 = (('a'), ('c')) t2 = (('b'), ('d')) print(list(map(lambda t: {t[0]: t[1]}, zip(t1, t2)))) l = lambda t1, t2: [{i: j} for i, j in zip(t1, t2)] print(l(t1, t2)) map内置函数使用: ma
-
Python3匿名函数用法示例
本文实例讲述了Python3匿名函数用法.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 # 匿名函数 # 1.不用给函数取名 # 2.使用方便,随时定义,随时使用 def calc_x(x): return x*x rs = calc_x(10) print (rs) # lambda 参数列表:函数执行的简单逻辑代码 # lambda 返回一个函数对象,可以使用变量接收 a=lambda x:x*x # 调用匿名函数 # 接收函数对象的变量
-
举例讲解Python的lambda语句声明匿名函数的用法
所谓匿名函数,即是不需要定义函数,像表达式一样使用,不需要函数名(很多时候名字让我很困扰),一些简单的函数简单化, 举个例子 我需要两个整数相加的函数,通常是这么定义的 def add(x, y): return x + y 很好的完成了我需要的功能, 但是我现在需要一个数字与字符串相加的函数 def addstr(x, y): return x + str(y) 又一次完成了我的需求,但是 我突然需要两个整数相减,相除的功能这样函数就得 一直写下去, 但是使用lambda 匿名函数可以直接使用
-
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
一. lamda匿名函数 为了解决一些简单的需求而设计的一句话函数 # 计算n的n次方 def func(n): return n**n print(func(10)) f = lambda n: n**n print(f(10)) lambda表示的是匿名函数. 不需要用def来声明, 一句话就可以声明出一个函数 语法: 函数名 = lambda 参数: 返回值 注意: 1. 函数的参数可以有多个. 多个参数之间用逗号隔开 2. 匿名函数不管多复杂. 只能写一行, 且逻辑结束后直接返回数据 3
-
浅谈python之高阶函数和匿名函数
map() map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. def func(x): return x*x r = map(func, [1, 2, 3, 4, 5]) print(type(r)) r = list(r) print(r) 输出结果: <class 'map'> [1, 4, 9, 16, 25] 可以看出,map让函数func作用于列表的每一项,使列表的每一项都被函数func
-
python匿名函数用法实例分析
本文实例讲述了python匿名函数用法.分享给大家供大家参考,具体如下: 匿名函数特点: 1.只能有一个表达式 2.不用return,默认return结果 3.不需要名字,防止函数名重复 4.是对象,可赋值给一个变量 经典例子 >>> map(lambda x : x*x, [2, 4, 8, 9]) [4, 16, 64, 81] python匿名函数lambda格式: lambda 参数(可以有默认值) : 表达式 # 无参 >>> lambda : 'hello
-
详解Python匿名函数(lambda函数)
匿名函数lambda Python使用lambda关键字创造匿名函数.所谓匿名,意即不再使用def语句这样标准的形式定义一个函数.这种语句的目的是由于性能的原因,在调用时绕过函数的栈分配.其语法是: lambda [arg1[, arg2, ... argN]]: expression 其中,参数是可选的,如果使用参数的话,参数通常也会在表达式之中出现. 下面举例来说明lambda语句的使用方法(无参数). # 使用def定义函数的方法 def true(): return True #等价的l
-
Python中的匿名函数使用简介
当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便. 在Python中,对匿名函数提供了有限支持.还是以map()函数为例,计算f(x)=x2时,除了定义一个f(x)的函数外,还可以直接传入匿名函数: >>> map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]) [1, 4, 9, 16, 25, 36, 49, 64, 81] 通过对比可以看出,匿名函数lambda x: x * x实际上就是: def f(x):
随机推荐
- JS阻止冒泡事件以及默认事件发生的简单方法
- JavaScript实现在数组中查找不同顺序排列的字符串
- Windows下降权MYSQL和apche的运行级别(普通用户权限运行)
- 原生 JS Ajax,GET和POST 请求实例代码
- java文件重命名(文件批量重命名)实例程序代码分享
- Automapper实现自动映射的实例代码
- Oracle捕获问题SQL解决CPU过渡消耗
- 原生JavaScript制作计算器
- MySQL 索引分析和优化
- php实现将base64格式图片保存在指定目录的方法
- PHP文件管理之实现网盘及压缩包的功能操作
- 原生js实现半透明遮罩层效果具体代码
- 分享20个Unix/Linux 命令技巧
- qt实现倒计时示例
- SQL Server 2008 R2登录失败的解决方法
- C# TreeView无限目录树实现方法
- php图像生成函数之间的区别分析
- JavaScript中自定义事件用法分析
- WIN7下网站用localhost可以访问改为ip不可访问如何解决
- 解析c#在未出现异常情况下查看当前调用堆栈的解决方法
其他
- python求两向量夹角取锐角
- vu怎么让页面滑动到底部
- 微服务eureka之间怎么调用
- android 检测手机屏幕是否解锁
- Android 滚轮时间选择器
- nginx 按照参数转发
- androiditem长按删除
- py获取服务器特定字段
- android studio "code格式化“
- oracle 数据库突然变成 乱码
- vue上传视频到后端
- pywinauto怎样处理滑块验证
- python 无向图成环检测
- layiu select 禁用
- vue中启用与停用按钮
- python excel文档批量替换
- eclipse执行python的waitkey(0)卡死
- postgre varchar转(Type)类型
- vue ios 弹出键盘导致软键盘后面内容被遮挡兼容
- pandas csv纵向拼接