考虑这段代码:
>>> 0 and True
0
>>> 0 and False
0
为什么我在 Python 中运行上述命令时得到 0?
请您参考如下方法:
当 and 的第一个条件计算为 False(在 Python 中为 0)时,第二个参数根本不会被计算,因为 and 永远不会变成真的。这称为短路。在这种情况下,表达式的结果是第一个操作数,在您的例子中是 0。
考虑这段代码:
>>> 0 and True
0
>>> 0 and False
0
为什么我在 Python 中运行上述命令时得到 0?
请您参考如下方法:
当 and 的第一个条件计算为 False(在 Python 中为 0)时,第二个参数根本不会被计算,因为 and 永远不会变成真的。这称为短路。在这种情况下,表达式的结果是第一个操作数,在您的例子中是 0。