首页  >  文章  >  后端开发  >  为什么 Python 中 `(1 in [1,0] == True)` 的计算结果为 `False`?

为什么 Python 中 `(1 in [1,0] == True)` 的计算结果为 `False`?

Patricia Arquette
Patricia Arquette原创
2024-11-01 04:23:02934浏览

Why does `(1 in [1,0] == True)` evaluate to `False` in Python?

错误计算 (1 in [1,0] == True)

与典型的编程语言不同,Python 使用比较来计算表达式运算符链。在表达式 (1 in [1,0] == True) 中,操作未按预期解析。

表达式实际上被解释为:

(1 in [1, 0]) and ([1, 0] == True)

此评估失败into:

  • (1 in [1, 0]):此计算结果为 True,因为列表 [1, 0] 中存在 1。
  • ([1, 0] == True):计算结果为 False,因为 [1, 0] 是一个列表,而不是布尔值。

整体表达式,因此,计算结果为:

True and False = False

这个意外结果凸显了 Python 与其他语言相比表达式计算的差异。为避免混淆,请使用括号指定所需的计算顺序:

(1 in [1,0]) == True # True

以上是为什么 Python 中 `(1 in [1,0] == True)` 的计算结果为 `False`?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn