2013-10-21 53 views
0

我建立使用Tkinter的GUI和我已經創造一流StringVar atributes依賴於一個名爲initial_numbers變量。如果initial_numbers是5,我已經創造5 StringVars()名爲self.string_var加上一個數字,所以我可以辨別出來。創建STRINGVAR()類變量

如果:

self.initial_numbers = 5 

我已經創造

self.string_var0 = StringVar() 
self.string_var1 = StringVar() 
self.string_var2 = StringVar() 
self.string_var3 = StringVar() 
self.string_var4 = StringVar() 

創建它們後,我想將它們添加到一個名爲stringList

我已經tryed這個名單,但它當然不起作用。

self.initial_numbers = 5 
stringList = [] 
for i in xrange(int(self.initial_numbers)): 
    self.string_var+str(i) = StringVar() 
    self.string_var+str(i).set("test") 
    stringList.append(self.date_string+str(i)) 

在此先感謝。

回答

2

你已經把它們放在一個列表;爲什麼要創建五個變量?把它們在列表中直接,使用索引來訪問它們。

self.string_var = []      # create empty list 
for i in xrange(self.initial_numbers): 
    self.string_var.append(StringVar())  # append to list 
    self.string_var[i].set("test")   # access var at index i