2016-08-06 22 views
-1

Ich habe Spiele für eine Weile gemacht, aber ich begann gerade auf Python. Ich mache aus Langeweile ein Zahlen-Ratespiel, aber ich bekomme immer einen Einrückungsfehler in Zeile 17 oder den letzten Rest der if-Anweisung.Einrückungsfehler auf If-Anweisung

+1

BTW, den Codeblock Start mit 'if event.type' ist zu viel eingerückt: Es sollte genauso eingerückt sein wie der 'print'-Aufruf. Und natürlich sollte 'else event.type == pygame.R'' elif event.type == pygame.R' sein. –

Antwort

2

sein Eine else Klausel keine Bedingung nehmen. Sie könnten entweder schreiben sie als elif Klausel oder als straight-forward else. Hinweis, BTW, dass Sie die = aus den ersten beiden Bedingungen entfernen sollte korrekt den Code zu machen:

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

immer noch einen Eindruckfehler bekommen – CabbageOverlord

+0

Schauen Sie sich die Zeile des IndentationError an. Es ist weit unter dem sonst, weil es ein anderes Problem ist. –

+0

Datei "number_game.py", Zeile 17 sonst ^ IndentationError: Eingeklickt entspricht keiner äußeren Einrückungsebene – CabbageOverlord

0

Sie können keine Bedingungen in der else -Statement haben. Else soll jeden Fall fangen, der nicht gefangen von der vorhergehenden if/elifs ist.

sollte Ihr erster Code-Block

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

immer noch einen Einzug Fehler auf "else:" – CabbageOverlord

+0

Ihre aktualisierte Antwort ist falsch. Bitte beachten Sie [mein Kommentar] (http://stackoverflow.com/questions/38803093/indentation-error-on-if-statement#comment64975319_38803093). Es ist eine gute Idee, den Antwortcode zu testen, bevor Sie ihn posten ... –