Калькулятор Python: простой способ решения математических задач
Калькулятор в языке программирования Python можно создать с использованием различных инструментов, возможен как простой калькулятор, так и более сложный, с использованием графического интерфейса и управления с помощью мыши.
Пример простого калькулятора на Python:
python
while True:
# Ввод команды с клавиатуры
command = input("Введите команду (+, -, *, /): ")
# Выход из цикла при вводе "q"
if command == "q":
break
# Ввод операндов
num1 = float(input("Введите первый операнд: "))
num2 = float(input("Введите второй операнд: "))
# Вычисление и вывод результата
if command == "+":
print(num1 + num2)
elif command == "-":
print(num1 - num2)
elif command == "*":
print(num1 * num2)
elif command == "/":
print(num1 / num2)
Данный код создает бесконечный цикл, в котором пользователь вводит команду и два операнда. Затем в зависимости от команды выполняется соответствующее действие и выводится результат.
Также можно создать более продвинутый калькулятор с использованием графического интерфейса с помощью библиотеки Tkinter. Пример:
python
import tkinter as tk
# Функция для обработки нажатия кнопок
def button_click(number):
current = result.get()
result.delete(0, tk.END)
result.insert(0, str(current) + str(number))
# Функция для обработки нажатия кнопки "="
def equals():
current = result.get()
result.delete(0, tk.END)
result.insert(0, eval(current))
# Создание окна и элементов управления
window = tk.Tk()
window.title("Калькулятор")
result = tk.Entry(window, width=20)
btn1 = tk.Button(window, text="1", command=lambda: button_click(1))
btn2 = tk.Button(window, text="2", command=lambda: button_click(2))
btn3 = tk.Button(window, text="3", command=lambda: button_click(3))
btn4 = tk.Button(window, text="4", command=lambda: button_click(4))
btn5 = tk.Button(window, text="5", command=lambda: button_click(5))
btn6 = tk.Button(window, text="6", command=lambda: button_click(6))
btn7 = tk.Button(window, text="7", command=lambda: button_click(7))
btn8 = tk.Button(window, text="8", command=lambda: button_click(8))
btn9 = tk.Button(window, text="9", command=lambda: button_click(9))
btn0 = tk.Button(window, text="0", command=lambda: button_click(0))
btn_plus = tk.Button(window, text="+", command=lambda: button_click("+"))
btn_minus = tk.Button(window, text="-", command=lambda: button_click("-"))
btn_multiply = tk.Button(window, text="*", command=lambda: button_click("*"))
btn_divide = tk.Button(window, text="/", command=lambda: button_click("/"))
btn_equals = tk.Button(window, text="=", command=equals)
# Расположение элементов управления на форме
result.grid(row=0, column=0, columnspan=4)
btn1.grid(row=1, column=0)
btn2.grid(row=1, column=1)
btn3.grid(row=1, column=2)
btn_plus.grid(row=1, column=3)
btn4.grid(row=2, column=0)
btn5.grid(row=2, column=1)
btn6.grid(row=2, column=2)
btn_minus.grid(row=2, column=3)
btn7.grid(row=3, column=0)
btn8.grid(row=3, column=1)
btn9.grid(row=3, column=2)
btn_multiply.grid(row=3, column=3)
btn0.grid(row=4, column=0)
btn_equals.grid(row=4, column=1)
btn_divide.grid(row=4, column=2)
window.mainloop()
Этот код создает окно с кнопками, которые можно использовать для ввода чисел и операций. При нажатии кнопки "=" происходит вычисление и результат выводится в текстовом поле.