pair [1]在Python3中的作用是什么?

0 python python-3.x

我正在阅读python3官方文档,遇到我不理解的语法对[1]。

pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
pairs.sort(key=lambda pair: pair[1])

print(pairs)
# [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]
Run Code Online (Sandbox Code Playgroud)

Dev*_*ngh 5

pairs是元组列表。(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')]
Run Code Online (Sandbox Code Playgroud)

如果您对元组的第一个元素进行排序,则排序将对整数进行,并按数字进行

In [10]: pairs.sort(key=lambda pair: pair[0])                                                                                                                                       

In [11]: pairs                                                                                                                                                                      
Out[11]: [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
Run Code Online (Sandbox Code Playgroud)

这个问题在这里进去更多的细节什么的元组是和这个问题在这里进在有关如何更多的细节key作品排序功能sort()和sorted()