python基础---匿名函数

匿名函数

使用def定义的函数是一个普通的函数, 适合用于功能完善的代码

匿名函数使用lambda

定义

python 复制代码
lambda value1, value2 ... : 表达式
python 复制代码
lambda a, b : a + b

调用

这一个函数没有名字, 使用的时候一般使用一个变量指向这一个函数, 之后使用这一个变量进行调用

python 复制代码
my_test_func = lambda a, b : a + b
my_test_func(11, 22)

还有一种使用方式是把这一个当做函数的参数进行传递, 之后使用这一个函数的参数调用这一个函数

python 复制代码
def func_test(func):
	print(func(11, 22))

func_test(lambda a,b : a + b)

实际的使用

使用sort的时候, 不能对一个字典里列表面的数据进行排序, 这时候可以设置sort函数的key参数

这一个key指向一个函数, 这一个函数会返回一个用于比较的值

python 复制代码
stus = [
    {"name": "jiao", "age":21}, {"name": "shi", "age":23}, {"name": "dong", "age":19}, 
]

# def sort_by_age(arg):
#    return arg["age"]

# print(stus)
# stus.sort(key = sort_by_age)
print(stus)
stus.sort(key = lambda arg: arg["age"])
bash 复制代码
PS E:\JHY\python\2024-4-22> python -u "e:\JHY\python\2024-4-22\main.py"
[{'name': 'jiao', 'age': 21}, {'name': 'shi', 'age': 23}, {'name': 'dong', 'age': 19}]
[{'name': 'dong', 'age': 19}, {'name': 'jiao', 'age': 21}, {'name': 'shi', 'age': 23}]
相关推荐
曲幽2 小时前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
渣波3 小时前
拒绝 SQL 焦虑!手把手带你用 NestJS + Prisma + DTO 写出“防弹”级后端代码
javascript·数据库·后端
荣码3 小时前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python
兵慌码乱12 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·sqlite·信号与槽·pyqt5·数据库设计·桌面应用开发·事务处理
金銀銅鐵14 小时前
[Python] 体验用欧几里得算法计算最大公约数的过程
python·数学
FreakStudio18 小时前
W55MH32L-EVB 上手测评:硬件 TCP/IP 加持的以太网单片机,MicroPython 零门槛开发
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
用户03321266636719 小时前
使用 Python 从零创建 Word 文档
python
Jim60020 小时前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
Csvn1 天前
Python 两大经典坑点 —— 可变默认参数 & 闭包延迟绑定
后端·python