一、源代码

import tkinter as tk

class Calculator(tk.Tk):

def __init__(self):

tk.Tk.__init__(self)

self.title("我的计算器")

self.memory = 0

self.Demo()

def Demo(self):

"""Create the Demo"""

btn_list = ["C", "(", ")", "/",

"7", "8", "9", "*",

"4", "5", "6", "-",

"1", "2", "3", "+",

"+/-", "0", ".", "="]

r = 1

c = 0

for b in btn_list:

self.button = tk.Button(self, text=b, width=5,

command=(lambda x=b: self.operate(x)))

self.button.grid(row=r, column=c, padx=3, pady=6)

c += 1

if c > 3:

c = 0

r += 1

self.entry = tk.Entry(self, width=21, borderwidth=3,

bg="light blue", font=("黑体", 11))

self.entry.grid(row=0, column=0, columnspan=4, padx=8, pady=6)

def operate(self, key):

"""press the button"""

if key == "=":

result = eval(self.entry.get())

self.entry.insert(tk.END, " = " + str(result))

elif key == "C":

self.entry.delete(0, tk.END)

elif key == "+/-":

if "=" in self.entry.get():

self.entry.delete(0, tk.END)

elif self.entry.get()[0] == "-":

self.entry.delete(0)

else:

self.entry.insert(0, "-")

else:

if "=" in self.entry.get():

self.entry.delete(0, tk.END)

self.entry.insert(tk.END, key)

if __name__ == "__main__":

Calculator().mainloop()

二、实现效果

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐