学习Python语法--Lambda函数

Lambda 函数解释

在 Python 中,lambda 函数是一种创建匿名函数的简便方法。这种函数没有名字,并且通常用于需要一个短小的函数来传递到其他函数中的场景。

语法

lambda 参数: 表达式
  • 参数: 这是传递给 lambda 函数的输入参数,可以有多个,使用逗号分隔。
  • 表达式: 这是 lambda 函数的返回值。注意,lambda 函数只能包含一个表达式。

示例解释

先来看这个的代码:

pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]

pairs.sort(key=lambda pair: pair[1])
详细解释
  1. 定义列表:

    pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
    

    这里定义了一个列表,列表中的每个元素是一个元组,每个元组包含一个整数和一个字符串。

  2. 使用 sort 方法排序:

    pairs.sort(key=lambda pair: pair[1])
    
    • sort 方法用于对列表进行就地排序。
    • key=lambda pair: pair[1] 指定排序的依据。lambda 函数接受一个参数 pair,返回 pair[1],即元组中的第二个元素。
执行过程
  1. 初始列表是 [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
  2. lambda 函数被应用于每个元组,提取第二个元素进行排序。
  3. 'four', 'one', 'three', 'two' 的字母顺序排序。
  4. 最终结果是 [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]

其他例子

示例1: 简单的 lambda 函数
# 定义一个 lambda 函数,用于计算两个数的和
add = lambda x, y: x + y

# 使用 lambda 函数
result = add(3, 5)
print(result)  # 输出: 8
  • 这里 lambda x, y: x + y 创建了一个匿名函数,用于返回两个数的和。
  • 我们将这个函数赋值给变量 add,然后可以像普通函数一样调用它。
示例2: 在 sorted 函数中使用 lambda
# 定义一个包含字典的列表
students = [
    {'name': 'Alice', 'score': 85},
    {'name': 'Bob', 'score': 92},
    {'name': 'Charlie', 'score': 78}
]

# 按照成绩排序
sorted_students = sorted(students, key=lambda student: student['score'])
print(sorted_students)
  • 这里 lambda student: student['score'] 创建了一个匿名函数,用于提取字典中的 score 键值。
  • sorted 函数使用这个 lambda 函数作为排序依据,对学生列表按成绩进行排序。

总结

lambda 函数用于创建简短的匿名函数,通常在需要传递简单函数作为参数的场景下使用。它可以提高代码的简洁性和可读性。通过上面的例子,可以更好地理解如何使用 lambda 函数以及它的实际应用场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值