我正在 CodingBat 上练习 Python。在那里,一个问题是:
给定 3 个 int 值 abc,返回它们的总和。但是,如果其中一个值与另一个值相同,则不计入总和。
我的回答是:
def lone_sum(a, b, c):
if a==b:
return c
elif a==c:
return b
elif b==c:
return a
elif a==b and a==c:
return 0
else:
return a+b+c
但是在执行时它显示正常,除了一种情况。那就是def long_sum(3,3,3)
。但是当我写if a==b and a==c
第一次检查时,它表明一切正常。
为什么会发生这种情况?为什么我需要elif a==b and a==c
在第一张支票上写?