和之间的区别是什么UserDict
,推荐使用哪一个?该文档似乎不赞成使用?dict``ABC``UserDict
而且似乎UserDictupdate()
会使用我的setitem
方法,而dict
不是吗?给定我想要的自定义setitem
和getitem
功能,哪些方法真正对重写至关重要?
使用ABC
s时,我将必须实现所有方法,因为它没有提供默认实现?
我想做一个dict
做两件事:
intern()
所有键和值所以其中UserDict
,dict
并ABC
最好将允许我这样做吗?
如果您想要一个实际上包含数据的自定义集合,请子类 dict 。如果您想 扩展 接口(例如,添加方法),这将特别有用。
但是,所有内置方法都不会调用您的自定义__getitem__
/
__setitem__
。如果需要完全控制这些控件,请创建一个实现collections.MutableMapping
抽象基类的自定义类。
ABC没有提供存储实际数据的方法,只是提供了一些方法的默认实现的接口。但是,这些默认实现将调用您的custom__getitem__
和__setitem__
。你将不得不使用内部dict
来保存数据,并实现所有抽象方法:__len__
,__iter__
,__getitem__
,__setitem__
,和__delitem__
。
类UserDict
从collections
模块(在Python
2中,模块被称为UserDict
以及)是围绕内部的包装dict
,实施MutableMapping
ABC。如果要自定义的行为dict
,则此实现可能是一个起点。
综上所述:
dict
。是否以及如何存储数据完全取决于您。MutableMapping
使用内部“真实”dict
作为存储的实现。如果您想要类似dict的存储集合,但是要覆盖暴露的某些方法dict
,那么这对您来说可能是一个很好的起点。但是,请务必阅读代码以了解基本方法的实现方式,以便在覆盖方法时保持一致。问题内容: 这是一个双重问题,其中包括理论部分和实际问题: 当将dict归类时: 应该被称为“安全”措施(例如,万一有一些重要的实施细节很重要)?有一个风险,即与Python的未来版本的代码休息,如果是 不 叫?我在这里寻找做一件事情或另一件事情的根本原因(实际上,打电话是安全的)。 我的猜测是,当被调用时,self已经是一个新的空dict对象,因此不需要调用(我确实希望dict首先是空的)。这个
我目前有一个代码片段,其中对于每个类别,它将找到子类别: 将递归获取一个类别的子级: 目前,使用,只检索子类别的子类别,因此如果每个子类别都有自己的子类别,则不会将其保存到子类别中。 我如何显示子子类别给我们的子类别? 我想用我的代码做的是获取一个父级,获取它的子级,然后将这些子级中的每一个视为父级,递归地获取它的子级,但是我的JSON输出并没有反映这一点。只有父对象有子对象-子对象没有子对象(尽
我已经为产品创建了一些自定义类别,它有子类别,子类别还有更多的子类别。现在我首先显示主要类别。如果我在那里显示子类别,那么将显示与该类别及其子类别相关的所有子类别。我想一步一步地向他们展示。也就是说,如果用户单击主类别,则会转到其子类别页面。如果用户单击其子类别之一,则应转到子类别,如果没有子类别,则显示产品。这是什么代码 它覆盖了以前的排序顺序。也就是说,如果从仪表板中,我们按排序顺序给出2到3
我正在使用SQLServer 2008,我迫切需要sql查询或存储过程来显示任何类别或子类别中的顶级品牌。例如,如果我通过Id分类=2,结果集应该通过执行id分类=2及其子类别和子类别的产品计数来显示电子产品中的顶级品牌。如果我通过Id分类=38,结果应该显示手机中的顶级品牌 以下是我数据库中的表格。 类别 品牌 下表打破了类别和品牌表之间的多对多关系 分类目录品牌 产品 关于乘积表的假设 产品只
我正试图通过WoodPress主题中的一个函数从woocommerce获取产品类别,我已经做到了: 这将按层次列出所有顶级类别及其下的子类别,但我有子类别(子类别)的子类别,因此如何列出这些子类别。
有一个类别,具有以下(重要)属性: 我正在尝试实现类别/子类别的概念。一个类别可以有零个或多个子类别。一个类别只能有一个父类别(可以为null)。对于顶级类别,parentCategory=null。 现在,我有一个所有类别的列表,