=" | "" | "!=" -6ren">
gpt4 book ai didi

python - 在 python 文档的哪个位置允许链接 `in` 运算符?

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

我最近发现以下返回 True :

'a' in 'ab' in 'abc'

我知道 python 比较链,例如 a < b < c ,但我在文档中看不到任何关于这是合法的内容。

这是 CPython 实现中的偶然特性,还是指定的行为?

最佳答案

这是完全指定的行为,而不是偶然的特征。运算符链接在 Comparison operators section 中定义:

Comparisons can be chained arbitrarily, e.g., x < y <= z is equivalent to x < y and y <= z, except that y is evaluated only once (but in both cases z is not evaluated at all when x < y is found to be false).

in是比较运算符之一;来自同一部分:

comp_operator ::=  "<" | ">" | "==" | ">=" | "<=" | "<>" | "!="
| "is" ["not"] | ["not"] "in"

对于可能没有多大意义的组合没有异常(exception)。

您用作示例的特定表达式因此执行为 'a' in 'ab' and 'ab' in 'abc' , 与 'ab'文字仅被执行(加载)一次。

关于python - 在 python 文档的哪个位置允许链接 `in` 运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38296689/

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