标签Python Tkin中的For语句

2024-04-28 02:03:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Tkinter库在Python中显示来自Facebook到label的字典的所有结果。标签仅显示第一条或最后一条记录。我在用for循环。 这是我的密码:

def loopInLabel(self, newsfeedData):
    for item in newsfeedData:
        try:
            a = ("Name: " + item['name'] + '\n' + "Message: " + item['message'] + '\n' + "Description: " + item['description'] + '\n')
            return a
        except KeyError:
            pass

在标签中显示

def facebookEvent(self, label):
    newsfeed = F.get('/me/home', {'fields':'name,description,message'})
    newsfeedData = newsfeed["data"]
    label.config(text=self.loopInLabel(newsfeedData))

当我用普通打印()打印到控制台时一切正常


Tags: nameselfmessageforfacebook字典tkinterdef
1条回答
网友
1楼 · 发布于 2024-04-28 02:03:25

如果要在一个标签中同时显示所有新闻提要项,请不要在循环中return。将项目附加到列表中,完成后返回整个项目。你知道吗

def loopInLabel(self, newsfeedData):
    lines = []
    for item in newsfeedData:
        try:
            a = ("Name: " + item['name'] + '\n' + "Message: " + item['message'] + '\n' + "Description: " + item['description'] + '\n')
            lines.append(a)
        except KeyError:
            pass
    return " | ".join(lines)

相关问题 更多 >