为什么“ True == False is False”评估为False?

raylu:

我在与==但不能一起使用的表达式上得到了一些相当意外的行为is

>>> (True == False) is False
True
>>> True == (False is False)
True
>>> True == False is False
False
>>> id(True)
8978640
>>> id(False)
8978192
>>> id(True == False)
8978192
>>> id(False is False)
8978640
豪尔赫卡:

因为实际上这是链式比较,所以

True == False is False

相当于

(True == False) and (False is False)

在这种情况下,这可能令人惊讶,但是可以让您编写1 <= x < 4不同于其他语言(如C)的语言。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么{} == false评估为false,而[] == false评估为true?

来自分类Python

为什么“ False is False is False”评估为“ True”?

来自分类Python

为什么“ False is False is False”评估为“ True”?

来自分类Dev

为什么 (true || false && false) 评估为 true?

来自分类Dev

为什么“ [] == true”和“![] == true”都评估为false?

来自分类Dev

当 {a statement that is equal to True} == True 评估为 false 时,为什么 True == True 评估为 True?

来自分类Dev

为什么“ range(2)== True中的1”评估为False?

来自分类Dev

为什么“ True or False”比“ False或True”要快?

来自分类Dev

为什么在Javascript中,(!+ [] + [])为'true'和(false + [])为'false'?

来自分类Dev

为什么$ false -eq“”为true?

来自分类Dev

为什么false &&(false)?false:true返回true

来自分类Python

为什么([1,0]中的1 = = True)评估为False?

来自分类Dev

为什么(false == 0)是TRUE?

来自分类Dev

为什么“ []是[]”在python中评估为False

来自分类Dev

为什么JavaScript JSON评估为false?

来自分类Dev

为什么`1> undefined`评估为false?

来自分类Dev

为什么[False]中的False == False会返回True?

来自分类Python

为什么`True is False == False`,在Python中是False?

来自分类Javascript

为什么“ true” == true在JavaScript中显示为false?

来自分类Dev

评估lambda演算:如果为false false true

来自分类Dev

序言:为什么是 true == not(not(true)) -> false?

来自分类Dev

布尔代数-为什么(True and False)True?

来自分类Dev

为什么在if语句中myNumber == True返回False的情况下,Python将字符串/数字评估为True?

来自分类Dev

为什么print('a'>'b')为false,而print('a'>'A')为True?

来自分类Java

为什么hasNext()为False,而hasNextLine()为True?

来自分类Dev

为什么 print(False == True and not True) 返回 False?

来自分类Python

为什么“ [False,True]中的not(True)”返回False?

来自分类Javascript

为什么JavaScript负数不总是为true或false?

来自分类Dev

为什么lodash`_.all([true,true,true],true);`返回`false`?

Related 相关文章

  1. 1

    为什么{} == false评估为false,而[] == false评估为true?

  2. 2

    为什么“ False is False is False”评估为“ True”?

  3. 3

    为什么“ False is False is False”评估为“ True”?

  4. 4

    为什么 (true || false && false) 评估为 true?

  5. 5

    为什么“ [] == true”和“![] == true”都评估为false?

  6. 6

    当 {a statement that is equal to True} == True 评估为 false 时,为什么 True == True 评估为 True?

  7. 7

    为什么“ range(2)== True中的1”评估为False?

  8. 8

    为什么“ True or False”比“ False或True”要快?

  9. 9

    为什么在Javascript中,(!+ [] + [])为'true'和(false + [])为'false'?

  10. 10

    为什么$ false -eq“”为true?

  11. 11

    为什么false &&(false)?false:true返回true

  12. 12

    为什么([1,0]中的1 = = True)评估为False?

  13. 13

    为什么(false == 0)是TRUE?

  14. 14

    为什么“ []是[]”在python中评估为False

  15. 15

    为什么JavaScript JSON评估为false?

  16. 16

    为什么`1> undefined`评估为false?

  17. 17

    为什么[False]中的False == False会返回True?

  18. 18

    为什么`True is False == False`,在Python中是False?

  19. 19

    为什么“ true” == true在JavaScript中显示为false?

  20. 20

    评估lambda演算:如果为false false true

  21. 21

    序言:为什么是 true == not(not(true)) -> false?

  22. 22

    布尔代数-为什么(True and False)True?

  23. 23

    为什么在if语句中myNumber == True返回False的情况下,Python将字符串/数字评估为True?

  24. 24

    为什么print('a'>'b')为false,而print('a'>'A')为True?

  25. 25

    为什么hasNext()为False,而hasNextLine()为True?

  26. 26

    为什么 print(False == True and not True) 返回 False?

  27. 27

    为什么“ [False,True]中的not(True)”返回False?

  28. 28

    为什么JavaScript负数不总是为true或false?

  29. 29

    为什么lodash`_.all([true,true,true],true);`返回`false`?

热门标签

归档