Вот я пишу графический калькулятор на python с библиотекой tkinter. Создал всякие кнопки, иконки, и задал для кнопок функции, по типу добавления чисел, операций и очистки поля ввода. Хочу оформить логику отображения цифр в поле ввода, также, как это сделано на калькуляторах в айфоне. Допустим изначально там стоит ноль, я нажимаю на кнопку цифры и ноль заменяется этим числом(a также число сохраняется в переменной x1), далее нажимаю на кнопку операции, но в поле ввода должно остаться тоже число(а операция соотвественно присвоена переменной x2), когда я ввожу второе число, оно заменяет первое в поле ввода(также сохраняется в какую-то переменную, допустим x3). И наконец при нажатии на кнопку равно в поле ввода должен вывестись результат взаимодействия этих чисел.(выполнится функция 'calculate()' ).
Подскажите пожалуйста как это можно грамотно сделать, вот заготовки моих функций:
def add_digit(digit):
global x1
value = calc.get()
if value[0] == '0' and len(value) == 1:
x1 = value[1:]
calc.delete(0, tk.END)
calc.insert(0, x1+digit)
def complete_operation(operation):
value = calc.get()
def calculate():
value = calc.get()
def clear():
calc.delete(0, tk.END)
calc.insert(0, '0')
Так это выглядит в оригинале: