2016-05-08 9 views
0

Ich beginne nur Programmierung und derzeit ein Text-Spiel. Ich weiß, dass es keinen Befehl in Python gibt, und nachdem ich einige Nachforschungen angestellt habe, habe ich verstanden, dass ich Schleifen verwenden muss, um diesen Befehl zu ersetzen, aber es tut einfach nicht das, was ich mir erhofft habe. Hier ist mein Code:Wie goto Befehl in Python zu ersetzen

print('Welcome to my bad game!') 
print('Please, press Enter to continue.') 
variable=input() 
if variable == '': 
    print('You are in a dark forest. You can only choose one item. Press 1 for a flashlight and press 2 for an axe.') 
while True: 
    item=input() 
    if item=='2': 
     print('Bad choice, you lost the game.') 
     quit() 
    if item=='1': 
     print('Good choise, now you can actually see something.') 

Also mein Problem dabei ist, dass, wenn der Spieler wählt den ‚falschen‘ Artikel des Programm tötet mich gerade, aber ich mag es zurück an den Anfang springen. Ich weiß eigentlich nicht, ob das überhaupt möglich ist, aber frag lieber, als sich zu wundern.

+0

statt True, würden Sie eine Bedingung wiederholen, wie während der Wiedergabe: und statt quit(), könnte es spielen = False –

+0

Von welcher Linie würden Sie wieder ausführen? – usr2564301

+0

Ich empfehle, ein grundlegendes Tutorial zu suchen (das [offizielle Python-Tutorial] (https://docs.python.org/3.5/tutorial/index.html) ist ziemlich gut). Wann immer Sie Zweifel haben, ob etwas möglich ist, blättern Sie durch die Themenliste - Sie werden wahrscheinlich finden, wonach Sie suchen. – TigerhawkT3

Antwort

0

Wenn Sie zu Beginn der Schleife bedeuten, lassen Sie einfach den Anruf an quit. Wenn du zu Beginn des Programms meinst, dann brauchst du auch eine Schleife dazu.

-1

Anstatt zu beenden, können Sie 'continue' verwenden, um zu Ihrer while-Schleife zurückzukehren. Aber aus diesem Beispiel ist nicht klar, was Sie tun wollen.