gpt4 book ai didi

in和比较的python运算符优先级

转载 作者:太空狗 更新时间:2023-10-29 22:06:00 25 4
gpt4 key购买 nike

以下比较产生 True:

>>> '1' in '11'
True
>>> ('1' in '11') == True
True

用另一种方式使用括号,我得到一个 TypeError:

>>> '1' in ('11' == True)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: argument of type 'bool' is not iterable

那么如何得到没有括号的 False

>>> '1' in '11' == True
False

最佳答案

Python 手册说 in== 是相等的 precedence .因此,默认情况下它们是从左到右计算的,但也需要考虑链接。您放在上面的表达式('1' in '11' == True)实际上被评估为...

('1' in '11') and ('11' == True)

这当然是 False。如果您不知道链接是什么,它可以让您执行类似...

if 0 < a < 1:

在 Python 中,让它代表你所期望的(“a 大于 0 但小于 1”)。

关于in和比较的python运算符优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7479808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com