Seite 1 von 1

Anfänger Frage : mit return Wert aus Modul weiterrechnen (NameError)

Verfasst: Dienstag 16. Januar 2018, 19:04
von SITARUK
Hallo,

ich habe ein modul für einen Würfelprozess geschrieben

Code: Alles auswählen

from random import randint

def wuerfeln():
    pasch = ""
    wuerfel_1 = randint (1,6)
    wuerfel_2 = randint (1,6)
    wurf_gesamt = wuerfel_1 + wuerfel_2
    if wuerfel_1 == wuerfel_2:
        pasch = "pasch"
    else:
        pasch = "kein Pasch"
    
    print ("Würfel 1 : ",wuerfel_1)
    print ("Würfel 2 : ",wuerfel_2)
    print ("Wurfgesamt : ",wurf_gesamt)
    print (pasch)
    return wurf_gesamt
    return pasch

Nun möchte ich das modul aufrufen und mit dem return Wert wurf_gesamt weiterrechnen.
Er findet diesen jedoch nicht (NameError: name 'wurf_gesamt' is not defined).

Code: Alles auswählen

from wuerfeln import wuerfeln

pos_aktuell=0

wuerfeln()
pos_aktuell = pos_aktuell + wurf_gesamt

print (pos_aktuell)
Wie kann ich auf den return Wert zugreifen ?

Re: Anfänger Frage : mit return Wert aus Modul weiterrehnen (NameError)

Verfasst: Dienstag 16. Januar 2018, 19:14
von Sirius3
@SITARUK: `pasch` mit leerem String zu initialisieren ist unnötig und sogar gefährlich, weil dann vielleicht ein fehlender if-Zweig übersehen wird. Das zweite `return` ist quatsch, wenn Du mehrere Werte zurückgeben willst, benutze Tuple. Und zur Frage, Du mußt den Rückgabewert schon einer Variable zuweisen.

Code: Alles auswählen

wurf_gesamt = wuerfeln()

Re: Anfänger Frage : mit return Wert aus Modul weiterrechnen (NameError)

Verfasst: Dienstag 16. Januar 2018, 19:26
von SITARUK
super, hat funktioniert - Danke!