python用tkinter制作一个拥有窗口界面并且可以检验输入数据是否为纯数字的简易计算器
时间: 2024-02-25 07:56:59 浏览: 69
好的,以下是一个使用 tkinter 制作的简易计算器,可以检验输入数据是否为纯数字:
```python
import tkinter as tk
class Calculator:
def __init__(self):
self.window = tk.Tk()
self.window.title("简易计算器")
self.window.geometry("300x150")
self.label1 = tk.Label(self.window, text="请输入第一个数字:")
self.label1.pack()
self.entry1 = tk.Entry(self.window)
self.entry1.pack()
self.label2 = tk.Label(self.window, text="请输入第二个数字:")
self.label2.pack()
self.entry2 = tk.Entry(self.window)
self.entry2.pack()
self.label3 = tk.Label(self.window, text="请选择运算符(+、-、*、/):")
self.label3.pack()
self.entry3 = tk.Entry(self.window)
self.entry3.pack()
self.button = tk.Button(self.window, text="计算", command=self.calculate)
self.button.pack()
self.result = tk.Label(self.window, text="")
self.result.pack()
self.window.mainloop()
def calculate(self):
try:
num1 = float(self.entry1.get())
num2 = float(self.entry2.get())
operator = self.entry3.get()
if operator == '+':
result = num1 + num2
elif operator == '-':
result = num1 - num2
elif operator == '*':
result = num1 * num2
elif operator == '/':
result = num1 / num2
else:
self.result.config(text="输入的运算符不正确!")
return
self.result.config(text="结果为:" + str(result))
except ValueError:
self.result.config(text="输入的数据不是纯数字,请重新输入!")
if __name__ == '__main__':
Calculator()
```
这个计算器使用了 tkinter 库创建窗口界面,包括三个输入框、一个计算按钮和一个结果显示标签。当用户点击计算按钮时,程序会尝试将输入的数据转换为浮点数,如果输入的数据不是纯数字,就会抛出 `ValueError` 异常,然后程序会在结果显示标签中提示用户重新输入。如果输入的数据是纯数字,就会执行相应的计算并在结果显示标签中输出结果。
阅读全文