1
我創建了十個按鈕,按鈕文本標記爲1到10.以下代碼正確地創建了10個按鈕和標籤。但它將打印9作爲所有按鈕的輸出。我希望它做的是打印按鈕,屏幕的相應數量的,因此,例如,如果用戶按下按鈕2,那麼它應該打印2.Python Tk多個按鈕創建問題
def create():
for i in range (1,10):
lst.insert(i,Button(text=i,command=lambda: prnt(i)).pack())
(注:「PRNT(我)」是一個函數,簡單地打印我的值。 'lst'是一個存儲創建按鈕的列表。)
從輸出中我可以說程序使用最新的i值作爲函數的參數用戶按下按鈕,那麼如何解決這個問題,而不必爲每個按鈕編寫10行代碼。
非常感謝,解決了這個問題。 我是Python的新手,在不知道它如何做的情況下使用lambda。再次感謝您的幫助 :) – Alphaceph