这篇文章将带你探索如何使用Python创建一个直观且实用的带界面计算器。我们将深入介绍如何利用Python的图形用户界面库,特别是Tkinter,来构建一个友好的用户界面,让你能够轻松进行数学运算。无论你是初学者还是有一定编程经验,本文都将为你提供清晰的步骤和示例代码,帮助你快速构建自己的计算器应用程序。无需担心复杂的数学计算,本文将解释如何实现基本的加减乘除等运算,以及如何处理错误输入。
直接上源码:
import tkinter as tk
# 创建主窗口
root = tk.Tk()
root.title("简单计算器")
# 添加显示结果的文本框
result_var = tk.StringVar()
result_var.set("0")
result_display = tk.Entry(root, textvariable=result_var, font=("Arial", 20), bd=10, insertwidth=4, width=14, justify="right")
result_display.grid(row=0, column=0, columnspan=4)
# 定义计算器操作函数
def button_click(value):
current_result = result_var.get()
if current_result == "0":
result_var.set(value)
else:
result_var.set(current_result + value)
def clear():
result_var.set("0")
def calculate():
try:
expression = result_var.get()
result = eval(expression)
result_var.set(result)
except Exception as e:
result_var.set("错误")
# 创建按钮
button_texts = [
("7", 1, 0), ("8", 1, 1), ("9", 1, 2), ("/", 1, 3),
("4", 2, 0), ("5", 2, 1), ("6", 2, 2), ("*", 2, 3),
("1", 3, 0), ("2", 3, 1), ("3", 3, 2), ("-", 3, 3),
("0", 4, 0), (".", 4, 1), ("=", 4, 2), ("+", 4, 3)
]
for (text, row, col) in button_texts:
button = tk.Button(root, text=text, font=("Arial", 20), padx=20, pady=20, command=lambda t=text: button_click(t))
button.grid(row=row, column=col)
# 清除按钮
clear_button = tk.Button(root, text="C", font=("Arial", 20), padx=20, pady=20, command=clear)
clear_button.grid(row=5, column=0)
# 运行按钮
equal_button = tk.Button(root, text="=", font=("Arial", 20), padx=20, pady=20, command=calculate)
equal_button.grid(row=5, column=2)
# 主事件循环
root.mainloop()
运行结果如下(具备基本的加减乘除功能):