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': '开发工程师'}]

未完待续。。。

相关推荐
Cachel wood4 分钟前
Mysql相关知识2:Mysql隔离级别、MVCC、锁
数据库·python·sql·mysql·中间件·数据分析·django
ccLianLian9 分钟前
Latex科研入门教程
python
_一条咸鱼_41 分钟前
Python 语法之变量与常量详解(一)
人工智能·python·深度学习
AI量化投资实验室1 小时前
年化112.5%,最大回撤24.3%,卡玛比率4.62 | polars因子引擎重构完成(python源代码下载)
开发语言·python·重构
@蓝莓果粒茶1 小时前
LeetCode第158题_用Read4读取N个字符 II
前端·c++·python·算法·leetcode·职场和发展·c#
朴拙数科2 小时前
Stable Diffusion秋叶整合包V4独立版Python本地API连接指南
开发语言·python·stable diffusion
明明跟你说过3 小时前
LangChain + 文档处理:构建智能文档问答系统 RAG 的实战指南
人工智能·python·语言模型·自然语言处理·chatgpt·langchain·gpt-3
架构师那点事儿3 小时前
人工智能基础-NumPy-向量矩阵数组库
人工智能·python·numpy
程序员晚枫3 小时前
从零打造你的专属Python第三方库
python·开源
这里有鱼汤4 小时前
__init__.py 是个啥,为什么深受大厂程序员偏爱?
后端·python