0

我正在使用 Tkinter 构建一个 GUI,并且我必须StringVar根据一个名为initial_numbers. 如果initial_numbers是 5,我必须StringVars()用名称self.string_var和数字创建 5,以便识别它们。

如果:

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

我已经尝试过这个,但当然它不起作用。

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))

提前致谢。

4

1 回答 1

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
于 2013-10-21T10:11:05.893 回答