Wo ist der Fehler?


17.02.2023, 09:20

Sorry für die Formatierung! Wenn ich auf Bearbeiten drücke ist immer alles normal.

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Hallo, ich bin zwar nicht der grosse Python-Fan, aber ich habe mal mit deinem Code ein bisschen rumgespielt. dabei ist das raus gekommen. Vielleicht hilft es ja weiter

Noch ein kleiner Nachtrag :

Ich bezweifele aber, dass die if- Überprüfungen so wirklich korrekt funktioniern...

from tkinter import *
from tkinter import ttk
import datetime

Zeit  = datetime.datetime.now()
Stunde = int( Zeit.strftime("%H"))
def Say_hello():
    if Stunde <= 11 and Stunde >=4:
        Label2 = ttk.Label(root, text="Guten Morgen!")
        Label2.pack()
    elif Stunde >= 12 and Stunde <= 14:
        Label3 = ttk.Label(root, text="Guten Mittag!")
        Label3.pack()
    elif Stunde >= 15 and Stunde <= 17:
        Label4 = ttk.Label(root, text="Guten Nachmittag!")
        Label4.pack()
    elif Stunde >= 18 and Stunde <= 23:
        Label5 = ttk.Label(root, text="Guten Abend!")
        Label5.pack()
    elif Stunde > 23 and Stunde < 4:
        Label6 = ttk.Label(root, text="Gute Nacht!")
        Label6.pack()

root = Tk()
root.title("Say hello!")
root.geometry("800x400")

Button1 = ttk.Button(root, text="Einloggen", command=Say_hello)
Button1.pack(side="bottom", fill="x")

root.mainloop()
elif Stunde > 23 and Stunde < 4:

Das geht so nicht, das ist immer false.

Ich habe zwar keine Ahnung von Python, aber da wird es sicherlich so etwas wie

else:

geben.

Hol dir die Zeit in der Funktion statt außerhalb, dann geht es vielleicht.