Ich versuche, einen Fehler in Python loszuwerden, aber bisher hat jede Methode, die ich versucht habe, nicht funktioniert. Jede Hilfe würde sehr geschätzt werden.UnboundLocalError: lokale Variable 'Geld' referenziert vor der Zuweisung
Der Code:
from sense_hat import SenseHat
import random
from guizero import App, PushButton,Text
import time
import pygame.mixer
from pygame.mixer import Sound
pygame.mixer.init()
sense = SenseHat()
app = App(title="Fruity Fruit Machine", bgcolor="yellow")
mario = Sound("SuperMarioBros.ogg")
money = 30.00
casino = 100.00
global money
global casino
def machine():
sense.clear(0,0,0)
images = ["apple.png", "orange.png", "lemon.png"]
fruit = []
money = money - 1.00
for i in range(3):
img = random.choice(images)
fruit.append(img)
sense.load_image(img)
time.sleep(3)
sense.clear(0,0,0)
if all_same(fruit) == True:
sense.show_message("You won £20!")
casino = casino - 20.00
money = money + 20.00
display_casino()
dispaly_money()
dc = "Casino money: " + casino
cm.set(dc)
md = "Your money: " + money
m.set(md)
else:
sense.show_message("You got 30p!")
money = money + 00.30
casino = casino + 00.70
display_casino()
display_money()
dc = "Casino money: " + casino
cm.set(dc)
md = "Your money: " + money
m.set(md)
def play_mario():
mario.play()
def all_same(items):
return all(x == items[0] for x in items)
button = PushButton(app, command=machine, text="SPIN")
button2 = PushButton(app, command=play_mario, text="Play Music")
cm = Text(app, text="",align="left")
m = Text(app, text="",align="right")
Der Fehler ist: UnboundLocalError: lokale Variable 'Geld' vor der Zuweisung referenziert. Python kommt auch manchmal mit einer Syntaxwarnung auf: SyntaxWarning: name ‚Casino‘ zugeordnet ist, bevor globale Deklaration
'global' Erklärungen keinen Sinn außerhalb Funktionen machen. – ForceBru
@ juanpa.arrivillaga ah, ja. –