廖翊宏eval函數圖形介面計算機

 

美國計算機




from tkinter import * def button_press(num): global equation_text equation_text = equation_text + str(num) equation_label.set(equation_text) def equals(): global equation_text try: total = str(eval(equation_text)) equation_label.set(total) equation_text = total except SyntaxError: equation_label.set("syntax error") equation_text = "" except ZeroDivisionError: equation_label.set("arithmetic error") equation_text = "" def clear(): global equation_text equation_label.set("") equation_text = "" window = Tk() window.title("廖翊宏模仿美國人的計算機") window.geometry("500x500") equation_text = "" equation_label = StringVar() label = Label(window, textvariable=equation_label, font=('consolas',20), bg="white", width=24, height=2) label.pack() frame = Frame(window) frame.pack() button1 = Button(frame, text=1, height=4, width=9, font=40,bg='#11ff11', command=lambda: button_press(1)) button1.grid(row=0, column=0) button2 = Button(frame, text=2, height=4, width=9, font=35, command=lambda: button_press(2)) button2.grid(row=0, column=1) button3 = Button(frame, text=3, height=4, width=9, font=35, command=lambda: button_press(3)) button3.grid(row=0, column=2) button4 = Button(frame, text=4, height=4, width=9, font=35, command=lambda: button_press(4)) button4.grid(row=1, column=0) button5 = Button(frame, text=5, height=4, width=9, font=35, command=lambda: button_press(5)) button5.grid(row=1, column=1) button6 = Button(frame, text=6, height=4, width=9, font=35, command=lambda: button_press(6)) button6.grid(row=1, column=2) button7 = Button(frame, text=7, height=4, width=9, font=35, command=lambda: button_press(7)) button7.grid(row=2, column=0) button8 = Button(frame, text=8, height=4, width=9, font=35, command=lambda: button_press(8)) button8.grid(row=2, column=1) button9 = Button(frame, text=9, height=4, width=9, font=35, command=lambda: button_press(9)) button9.grid(row=2, column=2) button0 = Button(frame, text=0, height=4, width=9, font=35, command=lambda: button_press(0)) button0.grid(row=3, column=0) plus = Button(frame, text='+', height=4, width=9, font=35, command=lambda: button_press('+')) plus.grid(row=0, column=3) minus = Button(frame, text='-', height=4, width=9, font=35, command=lambda: button_press('-')) minus.grid(row=1, column=3) multiply = Button(frame, text='*', height=4, width=9, font=35, command=lambda: button_press('*')) multiply.grid(row=2, column=3) divide = Button(frame, text='/', height=4, width=9, font=35, command=lambda: button_press('/')) divide.grid(row=3, column=3) equal = Button(frame, text='=', height=4, width=9, font=35, command=equals) equal.grid(row=3, column=2) decimal = Button(frame, text='.', height=4, width=9, font=35, command=lambda: button_press('.')) decimal.grid(row=3, column=1) clear = Button(window, text='clear', height=4, width=12, font=35, command=clear) clear.pack() window.mainloop()

印度女生拷貝github

git怪胎hub匯集github目前微軟維護,gitub

印度計算機


from tkinter import * from unittest import result def buttonClick(number): global operator operator = operator + str(number) input_value.set(operator) def buttonClear(): global operator operator = "" input_value.set("") def buttonEqual(): global operator result = str(eval(operator)) input_value.set(result) operator = "" main = Tk() main.title("廖翊宏改寫自印度女生的程式碼") operator = "" input_value = StringVar() display_text = Entry(main, font=("arial", 20, "bold"), textvariable=input_value, bd=30, insertwidth=4, bg="powder blue", justify=RIGHT) display_text.grid(columnspan=4) # Row 1 7 8 9 + btn_7 = Button(main, padx=16, bd=8, fg="pink",bg='#8E8E8E', font=("arial", 20, "bold"), text="7", command=lambda: buttonClick(7)) btn_7.grid(row=1, column=0) btn_8 = Button(main, padx=16, bd=8, fg="black",bg='#737300', font=("arial", 20, "bold"), text="8", command=lambda: buttonClick(8)) btn_8.grid(row=1, column=1) btn_9 = Button(main, padx=16, bd=8, fg="black",bg='#FFAAD5', font=("arial", 20, "bold"), text="9", command=lambda: buttonClick(9)) btn_9.grid(row=1, column=2) btn_add = Button(main, padx=16, bd=8, fg="black",bg='#99ff33', font=("arial", 20, "bold"), text="+", command=lambda: buttonClick("+")) btn_add.grid(row=1, column=3) # Row 2 - 4 5 6 - btn_4 = Button(main, padx=16, bd=8, fg="black",bg='#9F5000', font=("arial", 20, "bold"), text="4", command=lambda: buttonClick(4)) btn_4.grid(row=2, column=0) btn_5 = Button(main, padx=16, bd=8, fg="black",bg='#81C0C0', font=("arial", 20, "bold"), text="5", command=lambda: buttonClick(5)) btn_5.grid(row=2, column=1) btn_6 = Button(main, padx=16, bd=8, fg="black",bg='#DEFFAC', font=("arial", 20, "bold"), text="6", command=lambda: buttonClick(6)) btn_6.grid(row=2, column=2) btn_sub = Button(main, padx=16, bd=8, fg="black",bg='#2828FF', font=("arial", 20, "bold"), text="-", command=lambda: buttonClick("-")) btn_sub.grid(row=2, column=3) # Row 3 - 1 2 3 * btn_1 = Button(main, padx=16, bd=8, fg="black",bg='#007979', font=("arial", 20, "bold"), text="4", command=lambda: buttonClick(1)) btn_1.grid(row=3, column=0) btn_2 = Button(main, padx=16, bd=8, fg="black",bg='#BE77FF', font=("arial", 20, "bold"), text="5", command=lambda: buttonClick(2)) btn_2.grid(row=3, column=1) btn_3 = Button(main, padx=16, bd=8, fg="black",bg='#FFFF37', font=("arial", 20, "bold"), text="6", command=lambda: buttonClick(3)) btn_3.grid(row=3, column=2) btn_mul = Button(main, padx=16, bd=8, fg="black",bg='#750000', font=("arial", 20, "bold"), text="*", command=lambda: buttonClick("*")) btn_mul.grid(row=3, column=3) # Row 4 - 0 C = / btn_0 = Button(main, padx=16, bd=8, fg="black",bg='#D26900', font=("arial", 20, "bold"), text="0", command=lambda: buttonClick(0)) btn_0.grid(row=4, column=0) btn_clear = Button(main, padx=16, bd=8, fg="black",bg='#00ffff', font=("arial", 20, "bold"), text="清除", command=buttonClear) btn_clear.grid(row=4, column=1) btn_equal = Button(main, padx=16, bd=8, fg="black",bg='#E2C2DE', font=("arial", 20, "bold"), text="=", command=buttonEqual) btn_equal.grid(row=4, column=2) btn_div = Button(main, padx=16, bd=8, fg="black",bg='#B8B8DC', font=("arial", 20, "bold"), text="/", command=lambda: buttonClick("/")) btn_div.grid(row=4, column=3) main.mainloop()


留言

這個網誌中的熱門文章

廖翊宏價差策略與選擇權理論價格

廖翊宏大語言模型協助收集簡報的資料