用python语言的tkinter标准库实现下列程序:1. 简易计算器,窗口界面自由发挥,编程实现两个整数的加、减、乘、除操作。要求如下: - 首先进行操作数文本框检验,检验输入数据是否为纯数字; - 通过分别单击加、减、乘、除按钮,对操作数1与操作数2进行相应加、减、乘、除操作,并且将其结果写入操作3文本框。
时间: 2023-07-10 20:16:59 浏览: 96
好的,以下是实现简易计算器的代码:
```python
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("简易计算器")
# 创建操作数1输入框
self.num1 = tk.Entry(master, width=10)
self.num1.grid(row=0, column=0, padx=5, pady=5)
# 创建操作数2输入框
self.num2 = tk.Entry(master, width=10)
self.num2.grid(row=0, column=1, padx=5, pady=5)
# 创建操作3结果输出框
self.result = tk.Entry(master, width=15, state='readonly')
self.result.grid(row=0, column=2, padx=5, pady=5)
# 创建加、减、乘、除按钮
self.add_button = tk.Button(master, text="+", command=self.add)
self.add_button.grid(row=1, column=0, padx=5, pady=5)
self.subtract_button = tk.Button(master, text="-", command=self.subtract)
self.subtract_button.grid(row=1, column=1, padx=5, pady=5)
self.multiply_button = tk.Button(master, text="*", command=self.multiply)
self.multiply_button.grid(row=1, column=2, padx=5, pady=5)
self.divide_button = tk.Button(master, text="/", command=self.divide)
self.divide_button.grid(row=1, column=3, padx=5, pady=5)
def add(self):
num1 = self.num1.get()
num2 = self.num2.get()
if num1.isnumeric() and num2.isnumeric():
result = int(num1) + int(num2)
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, str(result))
self.result.config(state='readonly')
def subtract(self):
num1 = self.num1.get()
num2 = self.num2.get()
if num1.isnumeric() and num2.isnumeric():
result = int(num1) - int(num2)
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, str(result))
self.result.config(state='readonly')
def multiply(self):
num1 = self.num1.get()
num2 = self.num2.get()
if num1.isnumeric() and num2.isnumeric():
result = int(num1) * int(num2)
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, str(result))
self.result.config(state='readonly')
def divide(self):
num1 = self.num1.get()
num2 = self.num2.get()
if num1.isnumeric() and num2.isnumeric():
result = int(num1) / int(num2)
self.result.config(state='normal')
self.result.delete(0, tk.END)
self.result.insert(0, str(result))
self.result.config(state='readonly')
root = tk.Tk()
calculator = Calculator(root)
root.mainloop()
```
在这段代码中,我们首先创建了一个 Calculator 类,并在类的构造函数中创建了窗口界面的各个部分,包括操作数1、操作数2和操作3的文本框以及加、减、乘、除四个按钮。然后,我们为每个按钮都绑定了相应的方法,当用户单击按钮时,程序会调用这些方法对操作数1和操作数2进行相应的计算,并将结果输出到操作3的文本框中。在计算之前,我们还对操作数进行了检验,确保用户输入的是纯数字。
阅读全文