我想创建一个由两个组成的类:collections.OrderedDict
和{}。这样我就可以得到一个有序的字典,并为正在访问的不存在的键设置一个默认值。有什么方法可以做到这一点?在
我的解决方案是围绕上面提到的两个类创建另一个类。这是一个错误,因为每个类中的方法都有相同的名称,我想?在
from collections import defaultdict, OrderedDict
class owndic(OrderedDict, defaultdict):
pass
生产
^{pr2}$
干杯!在
Tags:
发生此异常是因为您试图从多个内置类型继承,这些类型在C级别上无法相互协作。这意味着这些类在其相似属性的功能上存在冲突。在本例中,
OrderedDict
和defaultdict
都是两个类似字典的类型,它们有自己独特的__setitem__
属性,并且处理键和值的方式也不同。在在C级别,当^{} 函数无法计算多个基类中的最佳基类时,就会发生此错误。还有许多其他原因可以导致此函数无法计算其他基数中的最佳基数或赢家,但在这种情况下,如果以下两种情况都不发生,则会发生错误。^{cd7>不是{cd5>子类型{cd5>不是{cd5>的子类型。在
但是,如果您想同时受益于}的功能,您可以简单地使用
defaultdict()
和{OrderedDict
及其内置的setdefault
属性。在下面是一个例子:
^{pr2}$*} 函数计算。
candidate
是base_i
的实基,它是传递给类调用方的基之一,使用^{相关问题 更多 >
编程相关推荐