首页 > 解决方案 > 我使用了 a != b != c: 它没有给我正确的结果 b != a == c

问题描述

这是来自codingbat Logic-2 https://codingbat.com/prob/p143951的问题

给定 3 个 int 值 abc,返回它们的总和。但是,如果其中一个值与另一个值相同,则不计入总和。

lone_sum(1, 2, 3) → 6
lone_sum(3, 2, 3) → 2
lone_sum(3, 3, 3) → 0



def lone_sum(a, b, c):
  if a != b != c:
    return a+b+c

  if a == b !=c:
    return c

  if a != b == c:
    return a

  if b != a == c:
    return b

  if a == b == c:
    return 0

  if a != b != c:
    return a+b+c

我期待one_sum(3, 2, 3) → 2,但我得到了 8,所以它必须完成 3+2+3,但为什么呢?

同样的,lone_sum(2, 9, 2) → 9但我得到了 13 所以又是 2+9+2

标签: pythonif-statement

解决方案


推荐阅读