-1

所以我有一个Button按钮列表,我想使用循环将命令与所有按钮相关联,但是当我单击时,发现该命令仅与最后一个按钮相关联。或者,我单独配置了所有按钮,它工作得很好但是我想使用循环进行配置(对于短代码)为了检查两种方法之间的差异,我将.config每个按钮的行放在一个新列表中(这里commandlisty),然后打印它们平等出来了True,这非常令人困惑。

commandlist=[]
for i in Buttons:
    commandlist.append(i.config(command=lambda:handle_button_click(i)))
y=[
Buttons[0].config(command=lambda:handle_button_click(Buttons[0])),
Buttons[1].config(command=lambda:handle_button_click(Buttons[1])),
Buttons[2].config(command=lambda:handle_button_click(Buttons[2])),
Buttons[3].config(command=lambda:handle_button_click(Buttons[3])),
Buttons[4].config(command=lambda:handle_button_click(Buttons[4])),
Buttons[5].config(command=lambda:handle_button_click(Buttons[5])),
Buttons[6].config(command=lambda:handle_button_click(Buttons[6])),
Buttons[7].config(command=lambda:handle_button_click(Buttons[7])),
Buttons[8].config(command=lambda:handle_button_click(Buttons[8])),
]
print(y==commandlist) #to check difference between both approaches which came out True
4

0 回答 0