是否可以创建一个由字符串指定对象名称的对象
例如
create_object(QtGui.QLineEdit, 'myname')
myname.setText = 'created!'
那就是
create_object(QtGui.QLineEdit, 'myname')
等于
myname = QtGui.QLineEdit(self)
最佳答案
要创建局部变量,您可以使用 globals()
函数获取全局变量的字典。示例-
gbl = globals()
gbl['myname'] = QtGui.QLineEdit
gbl['test'] = 1234
test
>> 1234
对于具有 locals()
函数的局部变量,该函数返回局部变量的字典(局部命名空间
的副本),您可以使用它来设置变量,仅当您位于函数外部并直接位于脚本部分中,但设置为 locals()
提供的字典在函数内部不起作用(您将无法访问该变量,即使在该函数中),当在函数之外使用它时,它与 globals()
具有完全相同的效果。
关于python - 使用字符串作为名称创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30966015/