📜  使用Python创建一个简单的计算器(1)

📅  最后修改于: 2023-12-03 15:36:36.413000             🧑  作者: Mango

利用Python创建一个简单的计算器

随着计算机技术的发展,人们不再需要手动计算复杂的算术问题,而是可以利用计算机完成这些任务。利用Python编程语言,可以轻松地创建一个简单的计算器。本文将介绍利用Python创建一个简单的计算器的步骤和原理。

步骤1:创建一个基本的用户界面

我们首先需要创建一个基本的用户界面,以接收用户的输入并显示计算结果。我们可以使用Python tkinter模块来创建一个基本的GUI。

import tkinter
from tkinter import *

root = Tk()
root.title("简单计算器")
root.geometry("300x300")

result = Entry(root, width=30, borderwidth=5)
result.grid(row=0, column=0, columnspan=4, padx=10, pady=10)

root.mainloop()

上述代码创建了一个简单的用户界面,其中包括一个标题为“简单计算器”的窗口和一个文本框输入框,用于显示计算结果。

步骤2:添加按钮和计算功能

接下来,我们需要添加一些按钮,并使用Python功能将其与计算器函数相关联。我们可以使用lambda函数轻松地完成此操作。

import tkinter
from tkinter import *

root = Tk()
root.title("简单计算器")
root.geometry("300x300")

result = Entry(root, width=30, borderwidth=5)
result.grid(row=0, column=0, columnspan=4, padx=10, pady=10)

num_button = []
for i in range(10):
    num_button.append(Button(root, text=str(i), padx=20, pady=10, command=lambda i=i: button_click(i)))
for i in range(9):
    num_button[i].grid(row=3-((i)//3), column=(i)%3)
num_button[9].grid(row=4, column=0)

def button_click(number):
    current = result.get()
    result.delete(0, END)
    result.insert(0, str(current) + str(number))

def button_clear():
    result.delete(0, END)

def button_add():
    first_num = result.get()
    global f_num
    global math
    math = "addition"
    f_num = int(first_num)
    result.delete(0, END)

def button_subtract():
    first_num = result.get()
    global f_num
    global math
    math = "subtraction"
    f_num = int(first_num)
    result.delete(0, END)

def button_multiply():
    first_num = result.get()
    global f_num
    global math
    math = "multiplication"
    f_num = int(first_num)
    result.delete(0, END)

def button_divide():
    first_num = result.get()
    global f_num
    global math
    math = "division"
    f_num = int(first_num)
    result.delete(0, END)

def button_equal():
    second_num = result.get()
    result.delete(0, END)

    if math == "addition":
        result.insert(0, f_num + int(second_num))
    elif math == "subtraction":
        result.insert(0, f_num - int(second_num))
    elif math == "multiplication":
        result.insert(0, f_num * int(second_num))
    elif math == "division":
        result.insert(0, f_num / int(second_num))

button_clear = Button(root, text="Clear", padx=20, pady=10, command=button_clear)
button_add = Button(root, text="+", padx=20, pady=10, command=button_add)
button_subtract = Button(root, text="-", padx=20, pady=10, command=button_subtract)
button_multiply = Button(root, text="*", padx=20, pady=10, command=button_multiply)
button_divide = Button(root, text="/", padx=20, pady=10, command=button_divide)
button_equal = Button(root, text="=", padx=20, pady=10, command=button_equal)

button_clear.grid(row=4, column=1)
button_add.grid(row=4, column=2)
button_subtract.grid(row=3, column=3)
button_multiply.grid(row=2, column=3)
button_divide.grid(row=1, column=3)
button_equal.grid(row=4, column=3)

root.mainloop()

上述代码添加了数字按钮和计算器按钮,并将其与计算器相关的函数连接。当我们单击这些按钮时,在文本框中输入的数字将被保存并执行所需的计算。最终的计算结果将在文本框中显示。

总结

使用上述步骤和代码,我们可以轻松地创建一个简单的计算器。虽然这只是一个微小的示例,但它演示了Python编程语言的强大功能和灵活性。有了这个计算器,我们可以轻松地完成各种复杂的算术问题,而不必费心手动计算它们。