class SortedDict(dict):
def __init__(self, data=None):
if data is None:
data = {}
super(SortedDict, self).__init__(data)
和
class SortedDict(dict):
def __init__(self, data={}):
dict(data)
我认为它们是一样的。
请您参考如下方法:
dict(data) 只是从 data 创建一个字典,而不将结果保存在任何地方。 super(SortedDict, self).__init__(data) 另一方面调用父类构造函数。
此外,在多重继承的情况下,使用 super 可确保以正确的顺序调用所有正确的构造函数。使用 None 作为默认参数而不是可变的 {} 可确保那些其他构造函数 don't accidentally modify SortedDicts default argument .
