Напиши на пайтоне калькулятор с хорошим визуалом
Ответ нейросети
14 марта 2025 17:49
Хорошо, давай создадим калькулятор на Python с хорошим визуалом. Мы будем использовать библиотеку tkinter, которая позволяет создавать графические интерфейсы.
Вот пошаговое руководство по созданию простого калькулятора:
Шаг 1: Установка окружения
Убедись, что у тебя установлен Python. Для этого можешь скачать его с официального сайта python.org. tkinter обычно идет в комплекте с Python, так что дополнительно устанавливать его не нужно.
Шаг 2: Импорт необходимых библиотек
Открой текстовый редактор или IDE, и начни с импорта библиотеки tkinter.
import tkinter as tk
Шаг 3: Создание основного окна
Создадим основное окно калькулятора.
root = tk.Tk()
root.title("Калькулятор")
Шаг 4: Добавление пользовательского интерфейса
Теперь добавим поле для ввода и кнопки для цифр и операций.
# Поле для отображения результата
entry = tk.Entry(root, width=16, font=('Arial', 24), borderwidth=2, relief='ridge')
entry.grid(row=0, column=0, columnspan=4)
# Функция для нажатий кнопок
def button_click(number):
current = entry.get()
entry.delete(0, tk.END)
entry.insert(0, current + str(number))
def button_clear():
entry.delete(0, tk.END)
def button_equal():
try:
result = eval(entry.get())
entry.delete(0, tk.END)
entry.insert(0, result)
except Exception as e:
entry.delete(0, tk.END)
entry.insert(0, "Ошибка")
Шаг 5: Создание кнопок
Добавим кнопки для цифр и действий.
# Кнопки цифр
buttons = [
('7', 1, 0), ('8', 1, 1), ('9', 1, 2),
('4', 2, 0), ('5', 2, 1), ('6', 2, 2),
('1', 3, 0), ('2', 3, 1), ('3', 3, 2),
('0', 4, 1), ('+', 4, 0), ('-', 4, 2),
('*', 5, 0), ('/', 5, 1), ('C', 5, 2), ('=', 6, 0)
]
for (text, row, col) in buttons:
if text == 'C':
button = tk.Button(root, text=text, width=10, height=3, command=button_clear)
elif text == '=':
button = tk.Button(root, text=text, width=10, height=3, command=button_equal)
else:
button = tk.Button(root, text=text, width=10, height=3, command=lambda t=text: button_click(t))
button.grid(row=row, column=col)
Шаг 6: Запуск приложения
Теперь добавим команду для запуска основного цикла приложения:
root.mainloop()
Полный код
Теперь соберем весь код вместе:
import tkinter as tk
root = tk.Tk()
root.title("Калькулятор")
# Поле для отображения результата
entry = tk.Entry(root, width=16, font=('Arial', 24), borderwidth=2, relief='ridge')
entry.grid(row=0, column=0, columnspan=4)
# Функции
def button_click(number):
current = entry.get()
entry.delete(0, tk.END)
entry.insert(0, current + str(number))
def button_clear():
entry.delete(0, tk.END)
def button_equal():
try:
result = eval(entry.get())
entry.delete(0, tk.END)
entry.insert(0, result)
except Exception as e:
entry.delete(0, tk.END)
entry.insert(0, "Ошибка")
# Кнопки
buttons = [
('7', 1, 0), ('8', 1, 1), ('9', 1, 2),
('4', 2, 0), ('5', 2, 1), ('6', 2, 2),
('1', 3, 0), ('2', 3, 1), ('3', 3, 2),
('0', 4, 1), ('+', 4, 0), ('-', 4, 2),
('*', 5, 0), ('/', 5, 1), ('C', 5, 2), ('=', 6, 0)
]
for (text, row, col) in buttons:
if text == 'C':
button = tk.Button(root, text=text, width=10, height=3, command=button_clear)
elif text == '=':
button = tk.Button(root, text=text, width=10, height=3, command=button_equal)
else:
button = tk.Button(root, text=text, width=10, height=3, command=lambda t=text: button_click(t))
button.grid(row=row, column=col)
root.mainloop()
Объяснение кода:
- tk.Tk() — создает главное окно приложения.
- tk.Entry — создает текстовое поле для отображения введенных значений и результатов.
- command — определяет, какая функция будет вызываться при нажатии кнопки.
- eval() — функция, которая вычисляет строку как математическое выражение.
- grid() — размещает элементы интерфейса на окне в виде сетки.
Запускай этот код, и у тебя получится простой калькулятор с графическим интерфейсом! Если у тебя есть вопросы или нужно что-то дополнительно объяснить, дай знать!
Понравился ответ?
Задай свой вопрос
Напиши любую задачу или вопрос, а нейросеть её решит



