Python OR Operator



所以,我不明白为什么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 or b == 10)没有被解释为(a == 10)或(b == 10)。有人能解释一下为什么会这样吗?

正确

我不完全确定,但这可能是因为第一个语句不是一个操作?所以可能不需要括号

最新更新