2015-02-09 134 views
-1

下面的代碼打印了什麼?我知道答案是TIME GREAT。但我不明白爲什麼它不是Right Cheer。當它將分數設置爲10這個if語句爲什麼等於這個

score = 10 
if score < 10: 
    print ("NOW") 
    if score > 2: 
     print ("RIGHT") 
    elif score == 10: 
     print ("CHEER") 
else: 
    print ("TIME") 
print ("GREAT") 
+2

因爲10不小於10 – BrenBarn 2015-02-09 00:18:24

+0

但是10是>那2?所以不會導致它打印「正確」? – Evan 2015-02-09 00:20:17

+0

它不會通過第一個條件,並且它會進入相應的else塊。請注意,如果score> 2:'在'if score <10:'條件內。 – 2015-02-09 00:21:13

回答

0

由於輸入得分是10,這失敗if條件,並且將跳到else一部分。因此將打印,TIME GREAT

1

你的縮進是錯誤的,你需要的所有的elif的第一個如果,你的第一個if評估爲False後,你有別人嵌套的事實意味着他們從來沒有得到評估,你直接去else塊:

score = 10 
if score < 10: 
    print ("NOW") 
elif score > 2: 
    print ("RIGHT") 
elif score == 10: 
    print ("CHEER") 
else: 
    print ("TIME") 
print ("GREAT")