2016-08-06 4 views
-1
if mssge <= answr: 
    print("Too High, Try Again") 
elif mssge >= answr: 
    print("Too Low, Try Again") 
else: 
    print("Nice Job! R to play again; Q to quit") 

    if event.type == pygame.Q: 
      sys.exit() 

    else event.type == pygame.R: 
      break 
      gotoline(7) 

Я делал игры некоторое время, но я только начал работать на python. Я делаю ряд угадывающих игр из скуки, но я продолжаю получать ошибку с отступом в строке 17 или последнюю часть оператора if.ошибка отступа в If Statement

+1

BTW, код блока запуска с 'if event.type' с отступом слишком много: он должен иметь отступы так же, как и вызов' print'. И, конечно, 'else event.type == pygame.R' должен быть' elif event.type == pygame.R'. –

ответ

2

else пункт не принимает условие. Вы можете либо записать его в качестве elif пункта, или как прямой вперед else. Note, кстати, что вы должны удалить = из первых двух условий, чтобы сделать код правильный:

if message_1 < rand_numb: 
    # <= replaced with < in this condition^
    print("Too High, Try Again") 
elif message_1 > rand_numb: 
    print("Too Low, Try Again") 
    # >= replaced with > in this condition^
else: 
    # No condition on else^
    print("Nice Job! R to play again; Q to quit") 
+0

все еще получает ошибку с отступом – CabbageOverlord

+0

Посмотрите на строку IndentationError. Это путь ниже другого, потому что это другая проблема. –

+0

Файл «number_game.py», строка 17 еще ^ IndentationError: unindent не соответствует внешнему уровню отступа – CabbageOverlord

0

У вас не может быть условий в else-заявке. Else предполагается поймать каждый случай, который равен не, пойманным предшествующим if/elifs.

Ваш первый код-блок должен быть

if message_1 <= rand_numb: 
    print("Too High, Try Again") 
elif message_1 >= rand_numb: 
    print("Too Low, Try Again") 
else: # <------ no conditions here! 
    print("Nice Job! R to play again; Q to quit") 

if event.type == pygame.Q: 
    sys.exit() 

else event.type == pygame.R: 
    gotoline(5) 
    break 
+0

все еще получает ошибку с отступом на «else:» – CabbageOverlord

+0

Ваш новый ответ неверен. См. [Мой комментарий] (http://stackoverflow.com/questions/38803093/indentation-error-on-if-statement#comment64975319_38803093). Это хорошая идея, чтобы проверить код ответа, прежде чем публиковать его ... –

 Смежные вопросы

  • Нет связанных вопросов^_^