我不知道如何有效地表达我的问题,但我会尽力而为。我希望能够使用“ for”语句来遍历字典并访问以前制作的“ self”项目。就像我说的,很难说出这个问题。
我发现我可以使用exec()来做到这一点,但是我被告知除非绝对必要,否则不要使用exec()。另外,我意识到该示例在技术上是无用的,但这是我所需要的非常简化的版本。
global counter
counter = 0
class GUI:
def __init__(self):
self.stuff = ["foo","bar","fooest","barest"]
for i in self.stuff:
self.process(i)
self.printAll()
def process(self,i):
global counter
counter += 1
self.__dict__.update({"ex{}".format(counter):i})
def printAll(self):
global counter
while counter > 0:
exec("print(self.ex{})".format(counter))
counter -= 1
GUI()
这确实有效; printAll(self)确实打印出self.ex1至ex4。有没有exec()的方法吗?请帮忙!
答案 0 :(得分:0)
cloneContents()
我希望这适合您的情况