phython窗口编程,计算器,最上方为显示框,往下第一行从左到右为clear键,=键,π键,第二行为0,4,8,+,第三行为1,5,9,-第四行为2,6,.,*,第五行为3,7,开方键,/,第六行为**,//,余弦键,正弦键
时间: 2023-07-30 16:10:35 浏览: 106
好的,你可以使用Python自带的Tkinter模块来实现这个计算器界面。下面是一个示例代码:
```python
import math
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
master.title("Calculator")
# 创建显示框
self.display = tk.Entry(master, width=30, font=('Arial', 16))
self.display.grid(row=0, column=0, columnspan=4)
# 创建按钮
self.create_button("clear", lambda: self.clear())
self.create_button("π", lambda: self.insert(math.pi))
self.create_button("=", lambda: self.calculate())
self.create_button("0", lambda: self.insert(0))
self.create_button("4", lambda: self.insert(4))
self.create_button("8", lambda: self.insert(8))
self.create_button("+", lambda: self.insert("+"))
self.create_button("1", lambda: self.insert(1))
self.create_button("5", lambda: self.insert(5))
self.create_button("9", lambda: self.insert(9))
self.create_button("-", lambda: self.insert("-"))
self.create_button("2", lambda: self.insert(2))
self.create_button("6", lambda: self.insert(6))
self.create_button(".", lambda: self.insert("."))
self.create_button("*", lambda: self.insert("*"))
self.create_button("3", lambda: self.insert(3))
self.create_button("7", lambda: self.insert(7))
self.create_button("√", lambda: self.insert("sqrt("))
self.create_button("/", lambda: self.insert("/"))
self.create_button("**", lambda: self.insert("**"))
self.create_button("//", lambda: self.insert("//"))
self.create_button("cos", lambda: self.insert("math.cos("))
self.create_button("sin", lambda: self.insert("math.sin("))
def create_button(self, text, command):
button = tk.Button(self.master, text=text, width=7, height=3, font=('Arial', 16), command=command)
button.grid()
def insert(self, value):
self.display.insert("end", value)
def clear(self):
self.display.delete(0, "end")
def calculate(self):
expression = self.display.get()
try:
result = eval(expression)
self.display.delete(0, "end")
self.display.insert(0, result)
except:
self.display.delete(0, "end")
self.display.insert(0, "Error")
root = tk.Tk()
calculator = Calculator(root)
root.mainloop()
```
你可以根据自己的需求修改按钮的位置和功能。注意,这个示例代码中使用了Python的eval函数来计算表达式,因此存在一定的安全风险,应该谨慎使用。
阅读全文