pairs 是tuples 的列表。 (1, 'one') 是一个包含两个元素的元组示例。
来自文档:
元组是不可变的序列,通常用于存储异构数据的集合
然后我们通过key=lambda pair: pair[1] 对元组的第二个元素就地排序该列表(pair[1] 表示排序键应该是元组的第二个元素)
由于第二个元素是字符串,所以排序是按字典顺序或字母顺序进行的。
来自文档:
list.sort(key=None, reverse=False)
对列表中的项目进行排序(参数可用于排序自定义,请参阅 sorted() 了解它们的解释)。
In [7]: pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
In [8]: pairs.sort(key=lambda pair: pair[1])
In [9]: pairs
Out[9]: [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]
如果您对元组的第一个元素进行排序,则排序是对整数进行的,并且是按数字进行的
In [10]: pairs.sort(key=lambda pair: pair[0])
In [11]: pairs
Out[11]: [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
这个问题here 详细介绍了元组是什么以及
这个问题here 详细介绍了key 在排序函数sort() 和sorted() 中的工作原理