這是很有可能是我見過的最令人困惑的代碼片段,我似乎無法弄清楚它有什麼問題。整數檢查不起作用
a = 5
if a == 0 or 1 :
print "hi"
當運行時,它會打印「hi」,這一切都會讓我感到困惑。 請提供一些見解,我可以如何使它不返回嗨,並表現正常。 (應該沒有被返回)
這是很有可能是我見過的最令人困惑的代碼片段,我似乎無法弄清楚它有什麼問題。整數檢查不起作用
a = 5
if a == 0 or 1 :
print "hi"
當運行時,它會打印「hi」,這一切都會讓我感到困惑。 請提供一些見解,我可以如何使它不返回嗨,並表現正常。 (應該沒有被返回)
a = 5
if (a == 0) or (a == 1): #changed from if a == 0 or 1
print ("hi")
#does not print 'hi'
檢查a
對0
和1
獨立。
這不是你錯了;只是這個答案已經包含在一個副本中。 – Makoto
好的。我沒有檢查。 –
應該以這種方式工作:
while not a = 5:
if a in [0, 1]:
print "Hi"
你必須單獨檢查每個值:'如果== 0或== 1:'或*否則*你會*短用一個整數電路*第一個條件。 –
它是'如果(a == 0)或1:'。 –
'1'在Python中評估爲'True' - 所以你得到'if False or True:'評估爲True' – LocalVolatility