使用循环创建以列表中的元素命名的变量
Using a loop to create variables named after elements in a list
我正在尝试使用 Python 和 Tkinter 创建注册表单...
为了保持整洁,我想遍历此 list
:
的元素
signup_fields = ['first_name', 'last_name', 'username', 'password', 'confirm_password', 'email', 'confirm_email', 'height', 'weight']
使用类似这样的 for
循环来创建输入框:
for field in signup_fields:
{field} = tk.Entry()
{field}.pack()
如您所见,我将 'field' 放在“{}”大括号中,以尝试获取 Python 根据列表中的字符串命名变量。我不知道该怎么做,也没有在网上找到解决方法。
你不想那样做。相反,将小部件存储在字典中。代码将更容易理解和调试。
entries = {}
for field in signup_fields:
entries[field] = tk.Entry()
有关其他备选方案,请参阅 How do I create variable variables?
我正在尝试使用 Python 和 Tkinter 创建注册表单...
为了保持整洁,我想遍历此 list
:
signup_fields = ['first_name', 'last_name', 'username', 'password', 'confirm_password', 'email', 'confirm_email', 'height', 'weight']
使用类似这样的 for
循环来创建输入框:
for field in signup_fields:
{field} = tk.Entry()
{field}.pack()
如您所见,我将 'field' 放在“{}”大括号中,以尝试获取 Python 根据列表中的字符串命名变量。我不知道该怎么做,也没有在网上找到解决方法。
你不想那样做。相反,将小部件存储在字典中。代码将更容易理解和调试。
entries = {}
for field in signup_fields:
entries[field] = tk.Entry()
有关其他备选方案,请参阅 How do I create variable variables?