用python语言 使用tikinter写一段关于计算机加减乘除的计算机
时间: 2024-03-24 17:41:38 浏览: 27
好的,以下是基于Python语言和Tikinter库编写的计算器代码:
```python
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("计算器")
# 创建显示屏
self.display = tk.Entry(master, width=20, font=('Arial', 16))
self.display.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("+", 1, 3)
self.create_button("4", 2, 0)
self.create_button("5", 2, 1)
self.create_button("6", 2, 2)
self.create_button("-", 2, 3)
self.create_button("1", 3, 0)
self.create_button("2", 3, 1)
self.create_button("3", 3, 2)
self.create_button("*", 3, 3)
self.create_button("0", 4, 0)
self.create_button("C", 4, 1)
self.create_button("=", 4, 2)
self.create_button("/", 4, 3)
def create_button(self, text, row, column):
button = tk.Button(self.master, text=text, width=5, height=2, font=('Arial', 16), command=lambda:self.button_click(text))
button.grid(row=row, column=column, padx=5, pady=5)
def button_click(self, text):
if text == "=":
try:
result = eval(self.display.get())
self.display.delete(0, tk.END)
self.display.insert(0, result)
except:
self.display.delete(0, tk.END)
self.display.insert(0, "Error")
elif text == "C":
self.display.delete(0, tk.END)
else:
self.display.insert(tk.END, text)
root = tk.Tk()
calculator = Calculator(root)
root.mainloop()
```
这个计算器支持数字、加减乘除和清空操作,并且可以通过eval函数计算表达式的值。您可以在您的IDE中运行这段代码,或者将代码保存为.py文件并运行。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![png](https://img-home.csdnimg.cn/images/20210720083516.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)