also ich hab da ein kleines problem, ich wollte mir ein einfaches schere, stein, papier programm schreiben, ich hab angefangen und die GUI über Tkinter geschrieben, nach dem die fertig war hab ich sie getestet und siehe, da 3 Knöpfe und oben wird der Punkte stand in in Variablen angezeigt alles so wie es sein soll, ich schreib also die funktion das je nachdem für welches man sich entscheidet der gegner eine zufällige wahl trifft, dann sollte eine pop-up message kommen welche sagt ob du gewonnen verloren oder das gleiche gewählt hast und den punkte stand der variable dann ändern. als ich es testen wollte ist die konsole kurz aufgegangen und hat sich direkt wieder geschlossen und das wars, ich bekomm zwar die fehler meldung von wegen glaobal variable undefined module level aber ich kann damit nichts mehr wirklich anfangen.
Hier einmal mein Code:
from tkinter import *
from tkinter import messagebox
from tkinter.ttk import Notebook
import random
root = Tk()
root.wm_title("Schere, Stein, Papier")
root.config(background="#E0E0F8", width=50, height=50)
mypoint = 0
yourpoint = 0
genger = 0
def gewinner():
global mypoint
tkinter.messagebox.showinfo("Sieger", "Du hast Gewonnen!")
mypoint = mypoint + 1
def verlierer():
global yourpoint
tkinter.messagebox.showinfo("Verlierer", "Du hast Verloren!")
yourpoint = yourpoint + 1
def unentschieden():
tkinter.messagebox.showinfo("Unentschieden", "Ihr habt das gleiche gewählt!")
def sieger():
if wahl == 1:
if gegner == 1:
unentschieden()
if gegner == 2:
verlierer()
if gegner == 3:
gewinner()
if wahl == 2:
if gegner == 1:
gewinner()
if gegner == 2:
unentschieden()
if gegner == 3:
verlierer()
if wahl == 3:
if gegner == 1:
verlierer()
if gegner == 2:
gewinner()
if gegner == 3:
unentschieden()
def gegner():
global gegner
gegner = random.uniform(1, 3)
def schere():
global wahl
wahl = 1
sieger()
def stein():
global wahl
wahl = 2
sieger()
def papier():
global wahl
wahl = 3
sieger()
punkte = Label(root, text=str(mypoint) + " : " + str(yourpoint))
punkte.grid(row=0, column=1, padx=10, pady=5)
schere = Button(root, text="Schere", bg="#F78181", width=5, height=3, command=schere())
schere.grid(row=1, column=0, padx=8, pady=8)
stein = Button(root, text="Stein", bg="#F78181", width=5, height=3, command=stein())
stein.grid(row=1, column=1, padx=8, pady=8)
papier = Button(root, text="Papier", bg="#F78181", width=5, height=3, command=papier())
papier.grid(row=1, column=2, padx=8, pady=8)
root.mainloop()
ich sag dann schonmal Danke
