2013-04-29 41 views
1

我工作的一个Python GTK项目,并想知道是否有可能产生命名widget对象,并将其送回,以便它能像程序的其他部分可以使用随机变量名:是否有可能生成随机对象变量名称并从python方法返回它们?怎么样?

#Class AppGUI: 

def createButton(self, buttonlabel): 
    RandombuttonObjectName = gtk.Button(self.buttonlabel) 
    RandombuttonObjectName.show() 
    return RandombuttonObjectName 


#Main Program 

Button1 = AppGUI.createButton("Button 1") 
Button2 = AppGUI.createButton("Button 2") 

请建议如何实现这个随机对象命名并从类返回到主程序。

+4

...你知道,变量名** **什么做与对象?提供一个用例,其中生成随机变量名是有用的,也许有人可以回答你。 – Bakuriu 2013-04-29 12:19:22

+0

我认为一个名字总是需要引用任何类的任何对象/实例。 – 2013-04-29 14:23:58

+1

不,这完全是错误的:'a = [“一些字符串”]'。现在我可以通过'a [0]'引用字符串''一些字符串'​​'并且注意'a'不是*对字符串的引用。另外,你可以使用'locals(“a”)[0]',它除了内置的名字外不包含任何名字。总之:我们不需要名称来引用对象,我们可以在没有它们的情况下做很多事情。无论如何,我的意思是,变量的名称与其引用的对象并不严格相关。你可以将它分配给任何东西:'a = 5; a = 7',甚至删除'del a'。 – Bakuriu 2013-04-29 14:51:15

回答

4

正如你所写,createButton已经返回唯一的,基本上是随机的引用小部件。

(更准确地说,它返回小部件本身,但我觉得它更清晰的把它们作为参考。)

相关问题