Создать окно с помощью tkinter и создать внутри окна кнопку, кнопка при нажатии должна была нас перекидывать в калькулятор ( калькулятор тоже нужно сделать, простой чтоб вычитал, прибавлял, умножал и делил ). На Python, пожалуйста чтоб код работ. Дам 50 баллов
Ответы на вопрос
import tkinter as tk
class Calculator:
def __init__(self, master):
self.master = master
self.master.title("Calculator")
self.result = tk.StringVar()
self.result.set("0")
# Создаем строку для вывода результата
self.result_label = tk.Label(self.master, textvariable=self.result, font=("Arial", 24))
self.result_label.pack(padx=10, pady=10)
# Создаем кнопки для цифр и операций
buttons = [
"7", "8", "9", "+",
"4", "5", "6", "-",
"1", "2", "3", "*",
"0", ".", "=", "/"
]
# Функции для операций
def add():
self.operator = "+"
self.operand1 = float(self.result.get())
self.result.set("0")
def subtract():
self.operator = "-"
self.operand1 = float(self.result.get())
self.result.set("0")
def multiply():
self.operator = "*"
self.operand1 = float(self.result.get())
self.result.set("0")
def divide():
self.operator = "/"
self.operand1 = float(self.result.get())
self.result.set("0")
def calculate():
operand2 = float(self.result.get())
if self.operator == "+":
self.result.set(str(self.operand1 + operand2))
elif self.operator == "-":
self.result.set(str(self.operand1 - operand2))
elif self.operator == "*":
self.result.set(str(self.operand1 * operand2))
elif self.operator == "/":
try:
self.result.set(str(self.operand1 / operand2))
except ZeroDivisionError:
self.result.set("Error")
# Функция, которая вызывается при нажатии на кнопку
def button_click(button):
if button == "=":
# Вычисляем результат
calculate()
elif button == "+":
add()
elif button == "-":
subtract()
elif button == "*":
multiply()
elif button == "/":
divide()
else:
# Добавляем цифру в строку результата
if self.result.get() == "0":
self.result.set(button)