2015-02-09 6 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

+0

, но 10 is> что 2? так ли это, чтобы заставить его печатать «ПРАВО»? – Evan

+0

он не будет передавать первое условие if и так, чтобы оно входило в соответствующий блок else. Обратите внимание, что 'if score> 2:' находится внутри 'if score <10:' condition. –

ответ

0

Поскольку вход со счетом 10, который терпит неудачу условия if, и перейдет к else части. Следовательно, будет печатать, TIME GREAT

1

Ваших отступы не так, и нужно все Элиф после первой, если вашей первого 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") 
Смежные вопросы