from tkinter import *

window = Tk()
window.title("Digital Keyboard")
window.geometry("400x500-200+100")

display = StringVar()
display.set("0")

def calculate():
    try:
        result = str(eval(display.get()))
        if (float(result)-int(result))==0:
            result=int(result)
        else:
            None
        display.set(result)
    except:
        display.set("ERROR")

def add_to_display(value):
    current_display = display.get()
    if current_display == "0":
        current_display = ""
    display.set(current_display + value)

def clear_display():
    display.set("0")

# Create the display label
display_label = Label(window, textvariable=display, font=("Monaco", 26, "bold"), bg="#ccddee", justify=RIGHT, anchor=E)
display_label.grid(row=0, column=0, columnspan=4, sticky=EW)

# Create the number and operator buttons
btn_1 = Button(window, text="1", font=("Monaco", 30, "bold"), command=lambda: add_to_display("1"))
btn_1.grid(row=3, column=0, sticky=NSEW)

btn_2 = Button(window, text="2", font=("Monaco", 30, "bold"), command=lambda: add_to_display("2"))
btn_2.grid(row=3, column=1, sticky=NSEW)

btn_3 = Button(window, text="3", font=("Monaco", 30, "bold"), command=lambda: add_to_display("3"))
btn_3.grid(row=3, column=2, sticky=NSEW)

btn_4 = Button(window, text="4", font=("Monaco", 30, "bold"), command=lambda: add_to_display("4"))
btn_4.grid(row=2, column=0, sticky=NSEW)

btn_5 = Button(window, text="5", font=("Monaco", 30, "bold"), command=lambda: add_to_display("5"))
btn_5.grid(row=2, column=1, sticky=NSEW)

btn_6 = Button(window, text="6", font=("Monaco", 30, "bold"), command=lambda: add_to_display("6"))
btn_6.grid(row=2, column=2, sticky=NSEW)

btn_7 = Button(window, text="7", font=("Monaco", 30, "bold"), command=lambda: add_to_display("7"))
btn_7.grid(row=1, column=0, sticky=NSEW)

btn_8 = Button(window, text="8", font=("Monaco", 30, "bold"), command=lambda: add_to_display("8"))
btn_8.grid(row=1, column=1, sticky=NSEW)

btn_9 = Button(window, text="9", font=("Monaco", 30, "bold"), command=lambda: add_to_display("9"))
btn_9.grid(row=1, column=2, sticky=NSEW)

btn_0 = Button(window, text="0", font=("Monaco", 30, "bold"), command=lambda: add_to_display("0"))
btn_0.grid(row=4, column=0, sticky=NSEW)

btn_dot = Button(window, text=".", font=("Monaco", 30, "bold"), command=lambda: add_to_display("."))
btn_dot.grid(row=4, column=1, sticky=NSEW)

btn_divide = Button(window, text="/", font=("Monaco", 30, "bold"), command=lambda: add_to_display("/"))
btn_divide.grid(row=1, column=3, sticky=NSEW)

btn_mul = Button(window, text="*", font=("Monaco", 30, "bold"), command=lambda: add_to_display("*"))
btn_mul.grid(row=2, column=3, sticky=NSEW)

btn_minus = Button(window, text="-", font=("Monaco", 30, "bold"), command=lambda: add_to_display("-"))
btn_minus.grid(row=3, column=3, sticky=NSEW)

btn_plus = Button(window, text="+", font=("Monaco", 30, "bold"), command=lambda: add_to_display("+"))
btn_plus.grid(row=4, column=3, sticky=NSEW)

btn_equal = Button(window, text="=", font=("Monaco", 30, "bold"), command=lambda:calculate())
btn_equal.grid(row=4, column=2, sticky=NSEW)

clear = Button(window, text="clear", font=("Monaco", 30, "bold"), command=lambda:clear_display())
clear.grid(row=5, column=0, columnspan=4, sticky=NSEW)

window.mainloop()
if (float(result)-int(result))==0:
            result=int(result)
        else:
            None
        display.set(result)

Untitled

from tkinter import *
def calculatorid():
    wddwdwwdwdwdwdwdwdwd = Tk()
    wddwdwwdwdwdwdwdwdwd.title("Digital Keyboard")
    wddwdwwdwdwdwdwdwdwd.geometry("400x500-200+100")

    displayyyy = StringVar()
    displayyyy.set("0")

    def calllllllllll():
        try:
            result = str(eval(displayyyy.get()))
            if (float(result)-int(result))==0:
                result=int(result)
            else:
                None
            displayyyy.set(result)
        except:
            displayyyy.set("ERROR")

    def add_to_displayyyy(value):
        current_displayyyy = displayyyy.get()
        if current_displayyyy == "0":
            current_displayyyy = ""
        displayyyy.set(current_displayyyy + value)

    def clear_displayyyy():
        displayyyy.set("0")

    # Create the displayyyy label
    displayyyy_label = Label(wddwdwwdwdwdwdwdwdwd, textvariable=displayyyy, font=("Monaco", 26, "bold"), bg="#ccddee", justify=RIGHT, anchor=E)
    displayyyy_label.grid(row=0, column=0, columnspan=4, sticky=EW)

    # Create the number and operator buttons
    btnnnnnnnnnnn_1 = Button(wddwdwwdwdwdwdwdwdwd, text="1", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("1"))
    btnnnnnnnnnnn_1.grid(row=3, column=0, sticky=NSEW)

    btnnnnnnnnnnn_2 = Button(wddwdwwdwdwdwdwdwdwd, text="2", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("2"))
    btnnnnnnnnnnn_2.grid(row=3, column=1, sticky=NSEW)

    btnnnnnnnnnnn_3 = Button(wddwdwwdwdwdwdwdwdwd, text="3", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("3"))
    btnnnnnnnnnnn_3.grid(row=3, column=2, sticky=NSEW)

    btnnnnnnnnnnn_4 = Button(wddwdwwdwdwdwdwdwdwd, text="4", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("4"))
    btnnnnnnnnnnn_4.grid(row=2, column=0, sticky=NSEW)

    btnnnnnnnnnnn_5 = Button(wddwdwwdwdwdwdwdwdwd, text="5", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("5"))
    btnnnnnnnnnnn_5.grid(row=2, column=1, sticky=NSEW)

    btnnnnnnnnnnn_6 = Button(wddwdwwdwdwdwdwdwdwd, text="6", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("6"))
    btnnnnnnnnnnn_6.grid(row=2, column=2, sticky=NSEW)

    btnnnnnnnnnnn_7 = Button(wddwdwwdwdwdwdwdwdwd, text="7", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("7"))
    btnnnnnnnnnnn_7.grid(row=1, column=0, sticky=NSEW)

    btnnnnnnnnnnn_8 = Button(wddwdwwdwdwdwdwdwdwd, text="8", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("8"))
    btnnnnnnnnnnn_8.grid(row=1, column=1, sticky=NSEW)

    btnnnnnnnnnnn_9 = Button(wddwdwwdwdwdwdwdwdwd, text="9", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("9"))
    btnnnnnnnnnnn_9.grid(row=1, column=2, sticky=NSEW)

    btnnnnnnnnnnn_0 = Button(wddwdwwdwdwdwdwdwdwd, text="0", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("0"))
    btnnnnnnnnnnn_0.grid(row=4, column=0, sticky=NSEW)

    btnnnnnnnnnnn_dot = Button(wddwdwwdwdwdwdwdwdwd, text=".", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("."))
    btnnnnnnnnnnn_dot.grid(row=4, column=1, sticky=NSEW)

    btnnnnnnnnnnn_divide = Button(wddwdwwdwdwdwdwdwdwd, text="/", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("/"))
    btnnnnnnnnnnn_divide.grid(row=1, column=3, sticky=NSEW)

    btnnnnnnnnnnn_mul = Button(wddwdwwdwdwdwdwdwdwd, text="*", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("*"))
    btnnnnnnnnnnn_mul.grid(row=2, column=3, sticky=NSEW)

    btnnnnnnnnnnn_minus = Button(wddwdwwdwdwdwdwdwdwd, text="-", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("-"))
    btnnnnnnnnnnn_minus.grid(row=3, column=3, sticky=NSEW)

    btnnnnnnnnnnn_plus = Button(wddwdwwdwdwdwdwdwdwd, text="+", font=("Monaco", 30, "bold"), command=lambda: add_to_displayyyy("+"))
    btnnnnnnnnnnn_plus.grid(row=4, column=3, sticky=NSEW)

    btnnnnnnnnnnn_equal = Button(wddwdwwdwdwdwdwdwdwd, text="=", font=("Monaco", 30, "bold"), command=lambda:calllllllllll())
    btnnnnnnnnnnn_equal.grid(row=4, column=2, sticky=NSEW)

    clear = Button(wddwdwwdwdwdwdwdwdwd, text="clear", font=("Monaco", 30, "bold"), command=lambda:clear_displayyyy())
    clear.grid(row=5, column=0, columnspan=4, sticky=NSEW)

    wddwdwwdwdwdwdwdwdwd.mainloop()
    
calculatorid()