2016-04-02 8 views
1

Ich bin neu bei Python und ich mache mir ein einfaches Spiel, um mir selbst zu lernen. Ich habe einen Punkt erreicht, an dem ich im Spiel eine Entscheidung treffen möchte, die sich auf alle nachfolgenden Handlungen auswirkt.Navigieren um Python-Code

print ("Left down the hallway? Or right?") 

action4 = input()  
if action4 == ("left"): 
    print ("You turn left and proceed down this hallway") 
elif action4 == ("right"): 
    print ("You turn right and proceed down this hallway") 

#The game will branch off from this 

Kann ich zwei verschiedene Versionen von Code abzweigen, die davon abzweigen. Einer, bei dem du dich entscheidest, nach rechts zu gehen, und einer, bei dem du nach links gehst. Ich möchte, dass jede Richtung ein anderes Spiel gibt. Wie würde ich das machen? Danke im Voraus!

+0

Warum nicht einfach eine andere Funktion aufrufen, die auf der if-Bedingung basiert, die die einzelnen Spielversionen aufruft? – Pythonista

+0

Ich verstehe nicht ganz, was du meinst, sorry. Könnten Sie das näher ausführen? Ich bin nur ein Neuling :) –

Antwort

0

Verwenden Sie zwei Funktionen, um die Aufgabe zu erledigen. Es würde ungefähr so ​​aussehen:

# define your functions first 

def function_left(): 
    # do something here 

def function_right(): 
    # do something here 

#then call your functions from the if/elif block 

action4 = input("Left down the hallway? Or right?")  
if action4 == ("left"): 
    print ("You turn left and proceed down this hallway") 
    function_left() 
elif action4 == ("right"): 
    print ("You turn right and proceed down this hallway") 
    function_right() 
+0

Müssten diese Funktionen den gesamten Code für jede Version des Spiels enthalten? –

+0

Nicht wirklich, Sie könnten auch andere Funktionen definieren. Wenn Sie eine Aufgabe haben, die Sie mehr als einmal ausführen, sollten Sie eine Funktion für die Ausführung dieser Aufgabe definieren. Ist das sinnvoll? – MarkyPython