2013-04-29 46 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已經返回唯一的,基本上是隨機的引用小部件。

(更準確地說,它返回小部件本身,但我覺得它更清晰的把它們作爲參考。)

相關問題