Пытаюсь сделать калькулятор с Tkinter в python 3.8.2. Пробую сделать кнопки с for
l oop. Я сделал функцию, которая должна печатать значение кнопки, но печатает только 3
, то есть последнюю кнопку, созданную кодом. Можно исправить?
import tkinter as tk
class Calculator:
def interface(self):
self.i = tk.Tk()
self.i.geometry("700x800")
self.word = ["789","456","123"]
self.display = tk.Entry(self.i, text = "", width = 107,bg = "#acd", justify =
"right", bd = 30)
self.display.grid(row = 0)
self.f = tk.Frame(self.i)
self.f.grid(row = 1)
self.rows = 0
for i in self.word:
self.col = 0
for char in i:
but = tk.Button(self.f, text = char, command = lambda:
self.writenum(char), height = 8,width = 16)
but.grid(row =self.rows, column = self.col)
self.col += 1
self.rows += 1
self.i.mainloop()
def writenum(self,arg):
print(arg)
c = Calculator()
c.interface()