为什么我的Python Tkinker Button中的for循环仅返回最后一个值?

时间:2019-03-05 20:10:46

标签: python tkinter

  

大家好,

     

所以我试图在阵列蛋白中获得特定的价值   大小写)并将其传递给def title。它可以正常工作4个按钮出现,但是   每次我按下一个按钮(任何按钮)时,传递的值都会是   '燕麦片'(最后排列)。我究竟做错了什么?我可能希望每个按钮   创建的值传递了自己的值。但是我想在for循环中做到这一点   而不是一个接一个。谢谢

from Tkinter import *
import tkMessageBox
import Tkinter as tk


def title(testing):
    if testing == "quinoa":
        print(testing)


root = tk.Tk()
frame = tk.Frame(root)
frame.pack()

button = tk.Button(frame, 
                   text="QUIT", 
                   fg="red",
                   command=quit)
button.pack(side=tk.LEFT)

proteinsStarch = ['quinoa', 'tofu', 'tempeh','oatmeal']
for x in proteinsStarch:
    slogan = tk.Button(frame,text="Hit me", command=lambda:title(x))
    slogan.pack(side=tk.LEFT)

root.mainloop()
top.mainloop()

0 个答案:

没有答案