【问题标题】:I want to know why this is true我想知道为什么这是真的
【发布时间】:2021-08-20 10:20:37
【问题描述】:
a = 1 < 2 == 2 > 1 in [1,2,3] < [2,3,4,5] != 1

我在测验中发现了这个问题,这是一个有趣的问题。我认为

  • 第一个 1&lt;2==2&gt;1 in [1,2,3] 被占用,当我检查时是真的
  • 然后[1,2,3] &lt; [2,3,4,5]也被认为是真的,我认为这是因为长度
  • 最后采用[1,2,3] &lt; [2,3,4,5] != 1,整个表达式为真

对吗?

【问题讨论】:

标签: python operators


【解决方案1】:

比较是链式的,所以是一一比较的,即1 &lt; 22 == 22 &gt; 1等。相当于:

a = (1 < 2) and (2 == 2) and (2 > 1) and (1 in [1,2,3]) and ([1,2,3] < [2,3,4,5]) and ([2,3,4,5] != 1).

您的第二点是不正确的,因为列表的比较适用于每个元素,所以[1,2,3] &lt; [2,3,4,5]True,因为它们的第一个元素,即1 &lt; 2。例如[1, 2, 3] &lt; [2] 也是True

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-27
    • 2019-06-22
    • 2019-08-09
    • 2015-02-19
    • 2021-09-06
    • 2012-05-20
    • 2023-02-26
    相关资源
    最近更新 更多