Python で Tkinter を使用して、self.do(x) を使用して番号 x を文字列変数に追加する番号付きボタンを作成しようとしています。(スペースを節約するために) ループ内にあるこの特定のコードの問題は、文字列に LAST 番号 (つまり、この例では 9) が追加されることです。これは、この後に関数を呼び出し、num[i] の最新の値を使用するためです。これを修正する方法はありますか?
self.numButton = []
num = []
for i in range(9):
num.append(i + 1)
self.numButton.append(Button(root,text=num[i],command=lambda: self.do(num[i])))