python匿名函数怎么创建
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容主要讲解"python匿名函数怎么创建",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python匿名函数怎么创建"吧!前言在定义函数的时候,不想给
千家信息网最后更新 2026年11月03日python匿名函数怎么创建
本篇内容主要讲解"python匿名函数怎么创建",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python匿名函数怎么创建"吧!
前言
在定义函数的时候,不想给函数起一个名字。这个时候就可以用lambda来定义一个匿名函数
语法:
变量名= lambda 参数:表达式(block)
参数:可选,通常以逗号分隔的变量表达式形式,也就是位置参数
表达式:不能包含循环、return,可以包含if…else…
注意:
1.表达式中不能包含 循环,return.可以包含 if…else…语句.
2.参数可有可无,如果有多个参数,使用逗号隔开
3.表达式计算的结果直接返回
一、创建一个匿名函数:
func = lambda: 3 > 2ret = func() # 调用匿名函数,变量名(),使用变量ret来接收表达式返回的内容print(ret) #Truedef func(): return 3 > 2ret = func()print(ret) #True# 和func=lambda :3>2 等价
运行结果:
TrueTrue

二、创建一个带参数的匿名函数
def func(x, y): return x + yret = func(1, 2)print(ret) #3#匿名函数func = lambda x, y: x + yret = func(1, 2) # 如果匿名函数有参数,调用匿名函数的时候需要传递实参。print(ret) #3
三、求两个数的中的最大的值
def func(x, y): if x < y: return y else: return xret = func(30, 20)print(ret) #30#匿名函数func = lambda x, y: y if x < y else x# 注意if和else 没有 : 不能换行,if判断体写在判断条件前面ret = func(11, 2)print(ret) #11func = lambda x, y: y if x < y else x

四、练习题:
1.将add()方法改成匿名函数
def add(x, y): return x + y func = lambda x, y: x + yret = func(1, 2)print(ret) # 3
2.使用 max函数求字典的最大值
dic = {'k1': 10, 'k2': 200, 'k3': 20}ret = max(dic) # 默认比较的是字典的key的大小。ASCII对于的十进制print(ret) # k3def func(key): return dic[key]ret = max(dic, key=func) # 改变比较规则,用value比较大小,最终返回的函数是字典的key值print(ret) # k2使用匿名函数ret = max(dic, key=lambda x: dic[x]) print(ret) #k23、根据列表中字典'name'对应的valuez值进行比较
lst = [ {'name': 'egon', 'price': 100}, {'name': 'rdw', 'price': 666}, {'name': 'zat', 'price': 1} ] # ret = max(lst) # 报错,字典之间不能比较。 # print(ret) def max_name(dic): return dic['name'] # 返回 字典 name对应的值 ret = max(lst, key=max_name) # 指定比较内容 print(ret) 使用匿名函数进行比较: ret = max(lst, key=lambda dic: dic['name']) # 指定比较内容 print(ret)运行结果:
{'name': 'zat', 'price': 1}{'name': 'zat', 'price': 1}同理可以根据列表中字典'price'对应的valuez值大小进行比较
lst = [ {'name': 'egon', 'price': 100}, {'name': 'rdw', 'price': 666}, {'name': 'zat', 'price': 1} ] def max_price(dic): return dic['price'] # 返回 字典 price 的值 匿名函数: ret = max(lst, key=lambda dic: dic['price']) # 指定比较内容 100,666,1 print(ret) #{'name': 'rdw', 'price': 666}4、求 lst 中每一个元素的平方值
lst = [1, 3, 4]def square(num): num2 = num * num return num2ret = map(square, lst) # 迭代器 1,4,16for i in ret: print(i) # 1,9,16 匿名函数:ret = map(lambda num: num * num, lst)for i in ret: print(i) # 1,9,16
5.过滤出列表中的所有奇数:
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]def odd(num): if num % 2 == 1: return True else: return Falseret = filter(odd, lst)print(list(ret)) #[1, 3, 5, 7, 9]# 匿名函数:ret = filter(lambda num: True if num % 2 == 1 else False, lst)print(list(ret)) #[1, 3, 5, 7, 9]
6、现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]
tup1 = (('a'), ('b'))tup2 = (('c'), ('d'))# [{'a':'c'},{'b':'d'}]ret = zip(tup1, tup2) #(('a','c'),('b','d'))def func(tup): #('a','c') ('b','d') return {tup[0],tup[1]}ret1=map(func,ret)print(list(ret1)) #[{'a': 'c'}, {'b': 'd'}]# 匿名函数:ret2 = list(map(lambda tup: {tup[0]: tup[1]}, ret))print(ret2) #[{'a': 'c'}, {'b': 'd'}]到此,相信大家对"python匿名函数怎么创建"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
函数
字典
参数
内容
表达式
变量
大小
时候
结果
最大
两个
方法
逗号
学习
循环
运行
实用
更深
可有可无
之间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
百单网互联网科技有限公司
广州淘业互联网络科技
国智互联网科技
互联网与科技金融数据
互联网科技金融公司
礼当家互联网科技
互联网科技媒体
奇酷互联网络科技
唐信互联网科技
科技互联网公司logo
互联网科技博客
人人互联网科技是培训
深圳互联网科技怎么样
福州新华互联网科技学校 知乎
互联网科技研发水平
电子商务与互联网科技的关系
浙南科技城互联网大厦招聘
图游互联网科技
新氧科技和美国互联网有关系吗
米泉互联网科技专业怎么样
互联网科技公司排名
美国互联网保险保险科技
互联网扶贫科技
奔汉互联网科技
科技互联网创业计划书
互联网科技咨询
镁科技互联网资讯平台
苏州铭阳互联网科技有限公司
众联互联网络科技
科技互联网公司两年变化