MST

星途 面试题库

面试题:Python中lambda表达式在复杂数据结构中的应用

假设有一个列表,其中每个元素都是一个包含两个元素的元组,例如[(3, 5), (2, 8), (1, 9)]。请使用lambda表达式结合Python的内置函数,对这个列表按照元组中第二个元素的大小进行升序排序,并返回排序后的列表。详细说明你使用的内置函数和lambda表达式是如何协同工作的。
50.3万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
  1. 代码实现
my_list = [(3, 5), (2, 8), (1, 9)]
sorted_list = sorted(my_list, key=lambda x: x[1])
print(sorted_list)
  1. 解释
    • 内置函数 sortedsorted 函数用于对可迭代对象进行排序。它有一个可选参数 key,这个参数接受一个函数,该函数会被应用到可迭代对象的每个元素上,sorted 函数会根据这个函数的返回值来进行排序。
    • lambda 表达式lambda x: x[1] 是一个匿名函数。这里的 x 代表列表 my_list 中的每个元组元素。x[1] 表示取元组 x 中的第二个元素。sorted 函数会将列表中的每个元组元素传递给这个 lambda 函数,然后根据 lambda 函数返回的元组中第二个元素的值来对列表进行升序排序。所以最终返回的 sorted_list 就是按照元组中第二个元素升序排序后的列表。

返回结果:[(3, 5), (2, 8), (1, 9)] 按照要求排序后为 [(3, 5), (2, 8), (1, 9)](这里示例数据排序后不变,若数据不同会有不同结果) 。