元组比较在Python中如何工作?

发布于 2021-02-02 23:17:32

我一直在阅读Core Python编程书,作者展示了一个类似的示例:

(4, 5) < (3, 5) # Equals false

所以,我想知道为什么/为什么等于假?python如何比较这两个元组?

顺便说一句,这本书没有解释。

关注者
0
被浏览
93
1 个回答
  • 面试哥
    面试哥 2021-02-02
    为面试而生,有面试问题,就找面试哥。

    比较元组的位置:将第一元组的第一项与第二元组的第一项进行比较;如果它们不相等(即第一个大于或小于第二个),则这是比较的结果,否则将考虑第二个,然后是第三个,依此类推。

    请参阅常见序列操作:

    相同类型的序列也支持比较。特别是,通过比较相应的元素按字典顺序比较了元组和列表。这意味着要比较相等,每个元素必须比较相等,并且两个序列必须是相同类型且长度相同。

    还可以进行值比较以获取更多详细信息:

    内置集合之间的词典比较如下:

    • 为了使两个集合比较相等,它们必须具有相同的类型,具有相同的长度,并且每对对应的元素都必须比较相等(例如,[1,2] == (1,2)由于类型不同,因此为false)。
    • 支持顺序比较的集合的排序与其第一个不相等元素相同(例如,[1,2,x] <= [1,2,y]具有与相同的值x <= y)。如果不存在相应的元素,则将对较短的集合进行排序(例如,[1,2] < [1,2,3]为true)。
      如果不相等,则序列与它们的第一个不同元素的排序相同。例如,cmp([1,2,x],[1,2,y])返回的结果与cmp(x,y)相同。如果相应的元素不存在,则较短的序列被视为较小的序列(例如[1,2] <[1,2,3]返回True)。

    注1:<>并不意味着与“大于”,“小于”,而是“是之前”和“之后”:所以(0,1)“是之前”(1,0)。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看