Python或Op

2024-06-16 14:46:18 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我不明白为什么Python不能正确计算这段代码:

def makes10(a, b):
  if (a or b == 10) or (a + b == 10):
    return True
  else:
    return False

但以下解释与预期一致:

def makes10(a, b):
  if a == 10 or b == 10 or (a + b == 10):
    return True
  else:
    return False

它们在我看来是一样的,但显然(a或b==10)没有被解释为(a==10)或(b==10)。有人能解释一下为什么会这样吗?你知道吗

Correct

Incorrect


Tags: or代码falsetruereturnifdefelse