gpt4 book ai didi

python - 区间比较中的未知变量不会引发 NameError

转载 作者:行者123 更新时间:2023-11-28 20:54:54 24 4
gpt4 key购买 nike

我今天用这个简单的代码遇到了一个非常奇怪的问题:

var1 = 1
var2 = 2

if var1 > var2 > var3:
print('Does not run')

print('Did not crash')

输出:

Did not crash

为什么这段代码在 Python 3.7 中没有引发 NameError ?将区间比较替换为简单比较会按预期引发 NameError。这是 Python 错误吗?

最佳答案

var1 > var2 > var3 等于 (var1 > var2) and (var2 > var3)。第一条语句的计算结果为 False,因此 and 之后的第二条语句根本不会因为 Short-circuit evaluation 而被计算。 .

关于python - 区间比较中的未知变量不会引发 NameError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58394569/

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