面试题答案
一键面试- 代码实现:
my_list = [(1, 'apple'), (3, 'banana'), (2, 'cherry')]
sorted_list = sorted(my_list, key=lambda x: x[0])
print(sorted_list)
- 解释
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)
这样就可以根据不同需求灵活地对数据进行排序。