gpt4 book ai didi

python - 在 Python ttk 中打印字典

转载 作者:行者123 更新时间:2023-12-01 05:28:54 28 4
gpt4 key购买 nike

我需要在 ttk 中显示 python 字典。因此,当前用户输入值并将这些值存储在字典中,每次输入后字典将更新为新值。我想将这些值打印在一个漂亮整洁的垂直列中。每次用户输入时更新列底部的新值。

我知道这个方法,但不知道如何将它映射到TK:

>>> D = {'d1': {'a':'1'}, 'd2': {'b':'2'}, 'd3': {'c':'3'}}
>>> for k, d in D.items():
print k, d

d2 {'b': '2'}
d3 {'c': '3'}
d1 {'a': '1'}

问题是,如果我将“print k, d”设置为我的 TTK 标签小部件,它只会在每次运行时更新该小部件,本质上只显示它运行的最后一个变量。

那么我如何让它在新行上显示每个值/键的字典,并且在更新时不会“忘记”以前的值?

最佳答案

创建一个字符串。然后将其设置为标签的文本。

例如:

from Tkinter import *   # Python 3.x: from tkinter import *
from ttk import * # Python 3.x: from tkinter.ttk import *

D = {'d1': {'a':'1'}, 'd2': {'b':'2'}, 'd3': {'c':'3'}}

root = Tk()
lb = Label(root, text='')
lb['text'] = '\n'.join('{} {}'.format(k, d) for k, d in D.items()) # <---
# OR lb.config(text=....)
# OR lb.configure(text=...)
lb.pack()
root.mainloop()

关于python - 在 Python ttk 中打印字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20768405/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com