在 python 中使用 Tkinter,尝试制作编号按钮,这些按钮使用 self.do(x) 将数字 x 添加到字符串变量。这段特定的代码在循环中(为了节省空间)的问题在于,它会将最后一个数字添加到字符串中(即本例中的 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])))