将字符串更改为按钮的名称

时间:2016-12-12 15:36:05

标签: python string tkinter

我试图找出如何将字符串更改为Button的名称。

例如,如果我有字符串self._name = 'self._prentice',我想制作self._prentice = tk.Button(master)。我需要这样做,因为字符串可以是任何名称,我需要创建一种存储方式,以便我可以稍后packdestroy

我已尝试使用exec,但我只能让它适用于整数而不是按钮。

2 个答案:

答案 0 :(得分:1)

使用setattr

setattr(self, '_prentice', tk.Button(master))

答案 1 :(得分:-2)

在python中,类的实例变量存储在字典self.__dict__中,因此不是

self._prentice = tk.Button(master)
你可以写

self.__dict__['_prentice'] = tk.Button(master)

或者,在您的情况下

self.__dict__[self._name] = tk.Button(master)