python - 如何从字典键创建变量?
问题描述
我有一本包含 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')
。
解决方案
您不需要使用变量,您的错误实际上来自您尝试使用 .config 的结果到 .pack。
尝试以下操作:
from tkinter import *
root = Tk()
dic = {'response1':Label(root, bg='white')}
dic['response1'].config(text='Hey')
dic['response1'].pack()
mainloop()
推荐阅读
- plot - 删除 Plotly 中图表之间的差距
- c# - 为什么 Math.Atan2(-0.0, x) 返回与 Math.Atan2(0.0, x) 不同的结果?
- pandas - 如何使用 np.where 将我的变量转换为另一个变量
- mongodb - 如何从 MongoDB 的集群中删除特定的分片?
- javascript - 无法使用 Webpack 定义未定义的属性“编译”
- javascript - 如何将 D3.js GeoJSON 和 CSV 加载到 CodeIgniter
- python - 为什么numpy数组不会将float更改为int?
- java - Apache ActiveMQ Artemis 问题将 Windows 客户端连接到 Linux 服务器
- javascript - 如何在材质ui中具有一致的宽度
- javascript - 获取值输入单选按钮javascript