配置Tkinter消息以在单独的行上显示元组

时间:2019-02-03 17:58:29

标签: python tkinter namedtuple

我正在尝试按照标题所述进行操作,配置Tkinter消息,以使WL_ratios中的每个元组都有自己的行,而不会被括号包围。创建更多消息不是一种选择,因为WL_ratios的长度可以变化,所以我只需要使用一个。

#(below) is in the __init__ of the class
self.Leaderboardtext = Message(self.LeaderboardFrame,text="",width=100)
self.Leaderboardtext.pack() 

#this (below) is in another function in the same class.
WL_ratios = [["james",3]["harrison",2]["jo",1]]
self.Leaderboardtext.configure(text="Leaderboard: {0}".format(WL_ratios))

到目前为止,width = 100是允许我将文本换到新行的唯一方法。但是,这仍然行不通,因为每个元组的长度都不同,因此一些元组跨两行分布,这不是我想要的。我知道您可以通过如何限制字符数来限制每一行,但是元组的字符长度又有所不同,所以我不认为这是一个选择。 有没有人建议可行?

1 个答案:

答案 0 :(得分:2)

只需将每个元组转换为字符串,然后在其中添加\n即可。另外,您可以分别调用元组中的每个值,然后在其中添加\n