如何使用python写一个计算器,有UI界面,按钮,并支持各种算法,支持函数
时间: 2023-02-08 19:22:01 浏览: 138
要使用 Python 写一个计算器,需要用到以下几个库:
1. Tkinter:用于创建图形界面。
2. sympy:用于支持各种算法和函数。
3. functools:用于将函数作为参数传递。
以下是一个简单的示例代码:
```python
import tkinter as tk
from tkinter import ttk
from sympy import *
import functools
def calculate():
exp = entry.get()
result = eval(exp)
label.config(text=str(result))
root = tk.Tk()
root.title("Calculator")
entry = ttk.Entry(root)
entry.grid(row=0, column=0, columnspan=4)
button1 = ttk.Button(root, text="1", command=lambda: entry.insert(tk.END, "1"))
button1.grid(row=1, column=0)
button2 = ttk.Button(root, text="2", command=lambda: entry.insert(tk.END, "2"))
button2.grid(row=1, column=1)
# Add more buttons for digits 0-9
button_add = ttk.Button(root, text="+", command=lambda: entry.insert(tk.END, "+"))
button_add.grid(row=1, column=3)
button_sub = ttk.Button(root, text="-", command=lambda: entry.insert(tk.END, "-"))
button_sub.grid(row=2, column=3)
# Add more buttons for other operators
button_eq = ttk.Button(root, text="=", command=calculate)
button_eq.grid(row=4, column=3)
label = ttk.Label(root, text="")
label.grid(row=5, column=3)
root.mainloop()
```
这仅是一个简单的示例,你可以在此基础上进行更多的改进和定制。
注意:上述代码使用了 `eval()` 函数,这在实际应用中是不安全的。请尽量避免使用 eval(),或者对输入进行严格验证。
阅读全文