Skip to main content
 首页 » 编程设计

python之如何让 for 循环在 python 2.7 中与 tkinter 一起工作

2025年05月04日8kevingrace

我正在尝试创建一个将搜索 .sql 文件的图形用户界面小部件。我正在使用 tkinter 并且我有一个无法正常工作的 for 循环。 5条结果多则只显示1条。

def OnPressEnter(self,event): 
    with con: 
        cur = con.cursor() 
        t = self.entryVariable.get() 
 
        cur.execute("select * from Dict where Def LIKE ? OR word LIKE ? LIMIT 12", ('%'+t+'%', '%'+t+'%')) 
        rows = cur.fetchall() 
 
        for row in rows: 
            #printing second & third column(See tuples) 
 
            self.labelVariable.set(row[1]) 
 
            self.labelVariable.set(row[2]) 

如果我输入“Apple”,我只会得到一个结果,即“$499”。那么如何让循环工作呢?

请您参考如下方法:

这不是 for 循环,而是您将同一个变量设置了两次。这里:

for row in rows: 
        #printing second & third column(See tuples) 
        #sets the variable 
        self.labelVariable.set(row[1]) 
        #sets the variable again to a different value 
        self.labelVariable.set(row[2]) 

你可以这样做:

 label = "" 
 for row in rows: 
    label += row[1] + ":" + row[2] + "\n" 
 self.labelVariable.set(label) 
 #print to check the label string 
 print label 

首先生成字符串,然后设置值。标签值应包含两个值,它们之间有冒号,行之间用换行符分隔。