Python函数 之 匿名函数

1.概念

匿名函数: 使用 lambda关键字 定义的表达式,称为匿名函数.

2.语法

  • lambda 参数, 参数: 一行代码
    • 只能实现简单的功能,只能写一行代码

    • 匿名函数 一般不直接调用,作为函数的参数使用的

3.代码

4.练习

python 复制代码
# 1, 定义匿名函数, 参数为两个整数数字, 求两个数字的乘积
lambda a, b: a * b.pr
# 2, 定义匿名函数, 参数为一个字典, 返回字典中 键为 age 的值
lambda x: x.get('age')
lambda x: x['age']

5.匿名函数的应用

对列表进行排序

列表.sort()

  • 只能对数字,字符串排序
python 复制代码
user_list1 = [5, 2, 3]
user_list1.sort()
print(user_list1)  # [2, 3, 5]

列表.sort(key=键的值)

  • 对列表中的字典排序:想要对列表中的字典排序,需要 key 形参来指定根据字典中的什么键排序
  • key 这个参数需要传递一个函数,
    • (1)使用匿名函数 列表.sort(key=lambda x: x'键')
    • (2)使用普通def函数列表.sort(key=函数)
python 复制代码
user_list = [
    {'name': '张三', 'age': 22, 'title': '测试工程师'},
    {'name': '李四', 'age': 24, 'title': '开发工程师'},
    {'name': '王五', 'age': 21, 'title': '测试工程师'}
]
user_list.sort(key=lambda x: x['age'])
print(user_list)
# [{'name': '王五', 'age': 21, 'title': '测试工程师'}, {'name': '张三', 'age': 22, 'title': '测试工程师'}, {'name': '李四', 'age': 24, 'title': '开发工程师'}]
python 复制代码
user_list = [
    {'name': '张三', 'age': 22, 'title': '测试工程师'},
    {'name': '李四', 'age': 24, 'title': '开发工程师'},
    {'name': '王五', 'age': 21, 'title': '测试工程师'}
]


def func(x):
    return x['age']


user_list.sort(key=func)
print(user_list)
# [{'name': '王五', 'age': 21, 'title': '测试工程师'}, {'name': '张三', 'age': 22, 'title': '测试工程师'}, {'name': '李四', 'age': 24, 'title': '开发工程师'}]

未完待续。。。

相关推荐
Ivanqhz14 小时前
BM1688 双核架构
python·深度学习·神经网络·cnn·mlir
Java后端的Ai之路14 小时前
Python进阶探索17 - Python中的深拷贝与浅拷贝
人工智能·python·ai·浅拷贝·深拷贝
西柚研究生12345615 小时前
论文分析17:YOLOv11_UAVNet:无人机航拍图像专用目标检测算法
人工智能·python·深度学习·算法·目标检测
沧海一笑-dj16 小时前
【Python】Python学习笔记-初识 Python
python·python安装·python解释器
打工仔折腾 AI16 小时前
FastAPI 从本机到生产服务器:Nginx+Gunicorn+Uvicorn 完整部署实录
人工智能·后端·python·nginx·fastapi·gunicorn
hanchenxing16 小时前
AI 数据管道重构:从函数堆到链式管道的可读性实践
python
hhzz16 小时前
【OpenCV 入门到精通 10】视频分析与光流跟踪:背景减除与运动检测
人工智能·python·opencv·性能优化
蓝胖的四次元口袋16 小时前
Python基础语法入门
python
Patrick在香港16 小时前
Python 抓 0.91 GB 香港法例:Agent 的进度该写进磁盘,不是写进上下文
爬虫·python·api·claude·香港
ClinicTech17 小时前
实验室洗瓶机的清洗系统架构与自动化控制解析
java·python