猫史档案馆


【Python作品分享】按钮计算器【作品秀】

用户:ATAWATAW查看:0 回复:2 评论:0 创建时间:2023-03-25T19:08:33


【作品展示】

center_image

 

【作品介绍】

使用chatgpt编写的代码所做的计算器。

 

【作品源代码】

from tkinter import *


class Calculator:

    def __init__(self, master):
        self.master = master
        master.title("Calculator")

        # 创建文本框
        self.display = Entry(master, width=35, borderwidth=5)
        self.display.grid(row=0, column=0, columnspan=4, padx=10, pady=10)

        # 创建按钮并放置在网格中
        button_1 = Button(master, text="1", padx=40, pady=20,
                          command=lambda: self.button_click(1))
        button_2 = Button(master, text="2", padx=40, pady=20,
                          command=lambda: self.button_click(2))
        button_3 = Button(master, text="3", padx=40, pady=20,
                          command=lambda: self.button_click(3))
        button_4 = Button(master, text="4", padx=40, pady=20,
                          command=lambda: self.button_click(4))
        button_5 = Button(master, text="5", padx=40, pady=20,
                          command=lambda: self.button_click(5))
        button_6 = Button(master, text="6", padx=40, pady=20,
                          command=lambda: self.button_click(6))
        button_7 = Button(master, text="7", padx=40, pady=20,
                          command=lambda: self.button_click(7))
        button_8 = Button(master, text="8", padx=40, pady=20,
                          command=lambda: self.button_click(8))
        button_9 = Button(master, text="9", padx=40, pady=20,
                          command=lambda: self.button_click(9))
        button_0 = Button(master, text="0", padx=40, pady=20,
                          command=lambda: self.button_click(0))

        button_add = Button(master, text="+", padx=39,
                            pady=20, command=self.add)
        button_subtract = Button(
            master, text="-", padx=41, pady=20, command=self.subtract)
        button_multiply = Button(
            master, text="*", padx=40, pady=20, command=self.multiply)
        button_divide = Button(master, text="/", padx=41,
                               pady=20, command=self.divide)

        button_clear = Button(master, text="Clear", padx=79,
                              pady=20, command=self.clear)
        button_equal = Button(master, text="=", padx=91,
                              pady=20, command=self.equal)

        #将按钮网格化
        button_1.grid(row=3, column=0)
        button_2.grid(row=3, column=1)
        button_3.grid(row=3, column=2)

        button_4.grid(row=2, column=0)
        button_5.grid(row=2, column=1)
        button_6.grid(row=2, column=2)

        button_7.grid(row=1, column=0)
        button_8.grid(row=1, column=1)
        button_9.grid(row=1, column=2)

        button_0.grid(row=4, column=0)

        button_clear.grid(row=4, column=1, columnspan=2)
        button_add.grid(row=5, column=0)
        button_subtract.grid(row=6, column=0)
        button_multiply.grid(row=6, column=1)
        button_divide.grid(row=6, column=2)

        button_equal.grid(row=5, column=1, columnspan=2)

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

    def clear(self):
        self.display.delete(0, END)

    def add(self):
        self.first_number = self.display.get()
        self.math = "addition"
        self.display.delete(0, END)

    def subtract(self):
        self.first_number = self.display.get()
        self.math = "subtraction"
        self.display.delete(0, END)

    def multiply(self):
        self.first_number = self.display.get()
        self.math = "multiplication"
        self.display.delete(0, END)

    def divide(self):
        self.first_number = self.display.get()
        self.math = "division"
        self.display.delete(0, END)

    def equal(self):
        second_number = self.display.get()
        self.display.delete(0, END)

        if self.math == "addition":
            self.display.insert(0, int(self.first_number) + int(second_number))

        elif self.math == "subtraction":
            self.display.insert(0, int(self.first_number) - int(second_number))

        elif self.math == "multiplication":
            self.display.insert(0, int(self.first_number) * int(second_number))

        elif self.math == "division":
            self.display.insert(0, int(self.first_number) / int(second_number))


root = Tk()
my_calculator = Calculator(root)
root.mainloop()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
1111111111111111211111111111111112

在吗

 

点赞0


评论


技术喵的真传子弟技术喵的真传子弟

不错不错,作品很有创意,希望你能在Python乐园打造属于自己的一片天地emotion_编程猫_厉害了

点赞0


评论