[英]How to convert string into variable name in Python (tkinter)
好的,这就是我想要做的。
import tkinter
def abc(buttonNumber):
buttonNumber["text"] = rating[i]
b11 = tkinter.Button(top, text = "Name", command = abc("b11"))
在这里,我希望有人单击b11按钮时调用abc
函数。
但是我不能使用abc(b11)
因为b11尚未定义。
因此,如果我改用abc("b11")
, abc("b11")
收到此错误:
TypeError:'str'对象不支持项目分配
我需要将字符串转换为变量吗? 如果是,怎么办?
还是可以通过更好的方式完成?
例如使用字典将变量名
dict = {}
x = "fizz" // variable name fizz
dict[x] = 4 // variable value
“使用{}大括号来构建字典,并使用[]方括号来对其进行索引。每对之间用冒号:和逗号分隔键和值。必须用双引号引起来。与列表一样,我们可以通过以下方式打印字典:打印它的引用;字典将一组对象(键)映射到另一组对象(值); Python字典是唯一键与值的映射;字典是可变的,这意味着它们可以更改。该键指向可以是任意的Python值。字典是无序的,所以添加的按键并不一定反映什么样的顺序也可报告回来。“的顺序, 字体
您的例子:
x = "b11 "
dict[x] = null // value of the button (pointer), set value in the future
b11 = tkinter.Button(top, text = "Name", command = abc(dict["b11"]))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.