Backtaste

Fragen zu Tkinter.
Commander
User
Beiträge: 15
Registriert: Dienstag 20. Mai 2014, 16:05

Wieso geht das nicht?

Code: Alles auswählen

        
    elif key == "√":
        ergebnis = eval(display.get())
        display.delete(0,tk.END)
        if ergebnis % 1 == 0:
            display.insert(tk.END,math.sqrt(ergebnis))
        else:
            display.insert(tk.END,int(math.sqrt(ergebnis)))
            

Wenn die Zahl keine Nachkommastelle bzw. als Nachkommastelle 0 hat,dann soll er int(math.sqrt(ergebnis)) machen,aber Python führt abwechselnd beides aus,egal ob das Ergebnis Nachkommastellen hat oder nicht.
BlackJack

@Commander: Bist Du sicher dass das ”nicht geht”? Mit welchen Eingaben hast Du es denn probiert, und was ist der *Sinn* davon? Bist Du sicher das du nicht das *Ergebnis* entsprechend umwandeln möchtest statt die *Eingabe*‽
Commander
User
Beiträge: 15
Registriert: Dienstag 20. Mai 2014, 16:05

Hab es jetzt einfach nur noch in Wurzel() geändert.

Code: Alles auswählen

Wurzel=math.sqrt
display.insert(tk.END,"Wurzel(")
Keine Ahnung,wieso ich es so kompliziert gemacht habe...
Antworten