我是Python的新手,在重用对象创建方法时遇到了麻烦,但仍然在图形模块中专门创建新对象。像这样:
no = 0
while 1 == 1:
"win" + str(no) = GraphWin("...",10,10)
no = no + 1
我知道这不起作用(而且毫无用处)但是如果不破坏它你会怎么做呢?这样我以后可以这样做:
c = 0
while c != int(n + 1):
"win" + str(c).close()
c = c + 1
那么每次定义新的胜利时你如何整合no变量以便以后可以区分?
安德鲁的回答有效^^感谢您的快速回复!
答案 0 :(得分:0)
看起来你正在尝试创建一个窗口数组。你想要做的是将你创建的每个窗口附加到给定的数组,以便稍后关闭它们。
以下是一个例子:
windows = []
while Somecondition:
windows.append(GraphWin("...",10,10))
以后:
for w in windows:
w.close()
这就是说,我不完全确定你要做什么:)。你不是通过学习来侮辱我们;实际上恰恰相反。
答案 1 :(得分:0)
这看起来像是字典的完美匹配!每个人都可以拥有自己的独立价值,以及它的独立窗口:
limit
要访问每个人,只需索引:
dictionary = {
"1": GraphWin(Whatever parameters)
}
它允许您区分和处理它们。要获取所有值,只需使用dictionary["1"].close() # Gets you the value (GraphWin stuff) and let's you do anything
或iterkeys()
方法获取每个键或值。希望它有所帮助!