MST

星途 面试题库

面试题:Python中sorted对列表排序灵活性之基础应用

假设有一个列表`my_list = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]`,请使用`sorted`函数按照元组内第一个元素从小到大对列表进行排序,并解释这里如何体现`sorted`排序的灵活性。
45.3万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
  1. 代码实现:
my_list = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]
sorted_list = sorted(my_list, key=lambda x: x[0])
print(sorted_list)
  1. 解释sorted排序的灵活性
    • 在上述代码中,sorted函数的key参数接收一个函数。这里使用了一个匿名函数lambda x: x[0],它指定了排序的依据是元组内的第一个元素。
    • sorted的灵活性体现在key参数可以传入不同的函数,以适应各种复杂的数据结构和排序需求。比如,如果要按照元组内第二个元素的长度排序,可以这样写:
my_list = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]
sorted_list = sorted(my_list, key=lambda x: len(x[1]))
print(sorted_list)
  • 不仅如此,sorted函数还可以用于不同类型的可迭代对象,如列表、元组、集合等,并且通过reverse参数可以轻松实现升序或降序排序。例如:
my_list = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]
sorted_list_desc = sorted(my_list, key=lambda x: x[0], reverse=True)
print(sorted_list_desc)

这样就可以根据不同需求灵活地对数据进行排序。