我应该如何理解“我应该如何理解”这句话;“束级”;用python?
今天,我从《Python算法》一书中学到了一堂课我应该如何理解“我应该如何理解”这句话;“束级”;用python?,python,Python,今天,我从《Python算法》一书中学到了一堂课 class Bunch(dict): def __init__(self, *args, **kwds): super(Bunch, self).__init__(*args, **kwds) self.__dict__ = self 但我不太明白第三行是怎么做的: super(Bunch, self).__init__(*args, **kwds) 我知道它将调用父类,并执行如下操作: dict.__
class Bunch(dict):
def __init__(self, *args, **kwds):
super(Bunch, self).__init__(*args, **kwds)
self.__dict__ = self
但我不太明白第三行是怎么做的:
super(Bunch, self).__init__(*args, **kwds)
我知道它将调用父类,并执行如下操作:
dict.__init__(self, *args, **kwds)
但是我不知道uu init uu函数对dict有什么影响
我该怎么理解呢?你不需要确切地知道dict\uuuu init\uuuu的作用。思考它的方式是
dict.\uuuu init\uuuu
执行使对象“像dict一样工作”所必需的操作。一般来说,当您子类化时,您需要调用超类\uuuu init\uuuu
以使类“像”其超类一样工作,并且当子类化一个内置类型(如dict)时也是如此。您不需要确切地知道dict\uu init\uuu
的作用。思考它的方式是dict.\uuuu init\uuuu
执行使对象“像dict一样工作”所必需的操作。一般来说,当您子类化时,您需要调用超类\uuuu init\uuuu
以使类“像”其超类一样工作,并且在子类化像dict这样的内置类型时也是如此。您可以将dict.\uu init\uuu
视为字典构造函数。e、 g.我会写:
d = dict(a=1, b=2)
或
两者都创建(初始化)字典{'a':1,'b':2}
。每当我写这两条语句时,它都会调用dict.\uuu init\uuu
,这就是添加a
和b
项的工作
同样,使用
Bunch
,它会将字典子类(Bunch
)中的所有关键字参数(或2序列的iterable)转换为键值对。您可以将dict.\uu init\uuu
视为字典构造函数。e、 g.我会写:
d = dict(a=1, b=2)
或
两者都创建(初始化)字典{'a':1,'b':2}
。每当我写这两条语句时,它都会调用dict.\uuu init\uuu
,这就是添加a
和b
项的工作
同样,使用
Bunch
,它会将字典子类(Bunch
)中的所有关键字参数(或2序列的一个可数)转换为键值对。通常使用\uuuu init\uuuuu
方法初始化属性。您可以执行dict(a=2,b=3)
,dict([('a',1),('b',2)]
等。初始化方法通常用于初始化属性。您可以执行dict(a=2,b=3)
,dict([('a',1),('b',2)])
等操作。