1
在下面的代码:困惑__init__方法中的高清__init__
import tkinter as tk
class CardShuffling(tk.Tk):
background_colour = '#D3D3D3'
deck_size = 52
def __init__(self):
tk.Tk.__init__(self) # What does this do?
我感到困惑的最后一行的目的.. CardShuffling的实例,从tk.Tk
继承,没有最后一行刚请重复已由CardShuffling(tk.Tk)
处理过的内容?
我已阅读文章,但仍有点困惑。 CardShuffling是tk.Tk的孩子,因此它拥有tk.Tk的所有方法 - 但是我们仍然需要在子类的构造函数中明确声明它?你能否充实'self.a = 0'的评论?为什么CardShuffling(tk.Tk)从父构造函数中运行该行,如果它继承了父构造函数的所有内容...... – dimebucker91
因为在定义类时,“self”不存在。当你声明:'cs = CardShuffling()'时,你只会得到一个实例(有'self'的实例)。现在'cs'是一个实例。只有现在,你可以附加一个像'self.a'这样的成员(然后转换成'cs.a')到那个实例。 –