gpt4 book ai didi

python - 为什么 Python 中没有 "and"和 "or"运算符?

转载 作者:IT老高 更新时间:2023-10-28 20:30:55 28 4
gpt4 key购买 nike

我不知道这一点,但显然 andor 关键字不是运算符。它们没有出现在 list of python operators 中.纯粹出于好奇,这是为什么呢?如果他们不是运营商,他们到底是什么?

最佳答案

因为它们是控制流构造。具体来说:

  • 如果 and 的左参数计算结果为 False,则根本不会计算右参数
  • 如果 or 的左参数计算结果为 True,则根本不会计算右参数

因此,这不仅仅是保留字的问题。它们的行为不像运算符,因为运算符总是计算所有参数。

您可以将此与按位二进制运算符进行对比,顾名思义,运算符:

>>> 1 | (1/0)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ZeroDivisionError: integer division or modulo by zero
>>> 1 or (1/0)
1

如您所见,按位 OR (|) 会计算其两个参数。然而,or 关键字在左参数的计算结果为 True 时根本不计算其右参数。这就是为什么在第二个语句中没有引发 ZeroDivisionError 的原因。

关于python - 为什么 Python 中没有 "and"和 "or"运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2017230/

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