我最近开始研究python编程语言,并在此过程中遇到以下声明:
[1,2]< [2,1]评估为 真
我好像不知道如何通过python在内部进行比较。
答案 0 :(得分:4)
在每个list
中逐项进行比较:
>>> [1, 2] < [2, 1] # 1 < 2: because the first two items differ, comparison ends here
True
>>> [1, 2] == [1, 2] # 1 == 1 and 2 == 2
True
>>> [1, 2][0] < [2, 1][0] # 1 < 2
True
>>> [1, 2][1] > [2, 1][1] # 2 > 1
True
有关Comparing Sequences and Other Types的更多信息:
可以将序列对象与具有相同序列类型的其他对象进行比较。比较使用词典排序:首先比较前两个项目,如果它们不同,则确定比较的结果;如果它们相等,则比较接下来的两个项目,依此类推,直到任一序列用完为止。如果要比较的两个项本身是相同类型的序列,则递归地执行词典比较。如果两个序列的所有项目相等,则认为序列相等。
答案 1 :(得分:2)
我确定这是一个重复的地方,但是当你比较列表时,正在进行比较lexicographically by each element。 Python首先比较1到2,即每个列表的第一个元素。这是事实,因此右侧列表大于左侧。