首页 > 解决方案 > 如何从字典键创建变量?

问题描述

我有一本包含 tkinter 标签的字典,但下面我只包括字典的第一部分

当我使用变量时,在下面的示例中我没有收到任何错误。

from tkinter import *

root = Tk()

dic = {'response1':Label(root, bg='white')}

lbl = dic['response1']
lbl.config(text='Hey')
lbl.pack()

mainloop()

但是当我在没有变量的情况下这样做时,就像这样

from tkinter import *

root = Tk()

dic = {'response1':Label(root, bg='white')}

dic['response1'].config(text='Hey').pack()

mainloop()

我收到这个错误

AttributeError: 'NoneType' object has no attribute 'pack'

从那以后,我需要为字典中的每个标签声明一个变量,这样我就可以避免这个错误。所以我问如何为字典中的每个项目声明一个变量,其中键是变量名。字典中的每个项目等等response1 = Label(root, bg='white')

标签: pythonpython-3.xdictionaryfor-loopvariables

解决方案


您不需要使用变量,您的错误实际上来自您尝试使用 .config 的结果到 .pack。

尝试以下操作:

from tkinter import *

root = Tk()

dic = {'response1':Label(root, bg='white')}

dic['response1'].config(text='Hey')
dic['response1'].pack()

mainloop()

推荐阅读