设计计算器(参考Python GUI设计-tkinter菜鸟编程 P90~),可适当自己添加功能优化版
时间: 2024-03-25 21:40:29 浏览: 143
基于Python实现tkinter计算器(源码).rar
好的,我可以为您设计一个简单的计算器,以下是代码示例:
```python
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("Calculator")
# 创建屏幕文本框
self.screen = tk.Entry(master, width=25, font=('Arial', 16))
self.screen.grid(row=0, column=0, columnspan=4, padx=5, pady=5)
# 创建数字按钮
self.create_button('7', 1, 0)
self.create_button('8', 1, 1)
self.create_button('9', 1, 2)
self.create_button('4', 2, 0)
self.create_button('5', 2, 1)
self.create_button('6', 2, 2)
self.create_button('1', 3, 0)
self.create_button('2', 3, 1)
self.create_button('3', 3, 2)
self.create_button('0', 4, 1)
# 创建操作按钮
self.create_button('+', 1, 3)
self.create_button('-', 2, 3)
self.create_button('*', 3, 3)
self.create_button('/', 4, 3)
self.create_button('C', 4, 0)
self.create_button('.', 4, 2)
self.create_button('=', 5, 3)
# 创建清除按钮
self.clear_button = tk.Button(master, text='Clear', width=10, command=self.clear)
self.clear_button.grid(row=5, column=0, columnspan=3, padx=5, pady=5)
def create_button(self, val, row, column):
button = tk.Button(self.master, text=val, width=5, height=2, command=lambda: self.button_click(val))
button.grid(row=row, column=column, padx=5, pady=5)
def button_click(self, val):
if val == '=':
try:
result = eval(self.screen.get())
self.screen.delete(0, tk.END)
self.screen.insert(0, str(result))
except:
self.screen.delete(0, tk.END)
self.screen.insert(0, 'Error')
elif val == 'C':
self.screen.delete(0, tk.END)
else:
self.screen.insert(tk.END, val)
def clear(self):
self.screen.delete(0, tk.END)
root = tk.Tk()
calculator = Calculator(root)
root.mainloop()
```
这是一个基本的计算器,其中包含数字按钮、操作按钮(加减乘除)、等号按钮和清除按钮。用户可以通过点击按钮来输入数字和操作符,计算器会在屏幕上显示运算结果。在这个基础上,您可以根据自己的需求添加更多功能,比如添加括号、支持科学计数法等。
阅读全文