|
29
|
| Eric O. Lebigot · 技术社区 · 16 年前 |
|
|
1
15
你应该打电话给
顺便问一下,你没有告诉我们你
希望
如果你想要一个具有dict(mapping)行为的类,并且你不需要一个dict(例如,没有代码可以做)
编辑:我在另一条评论中看到你没有重写dict的任何方法!那么子类化根本就没有意义,不要这样做。
编辑2:您希望从dict继承以添加新方法,但不需要重写任何方法。比一个好的选择可能是:
顺便问一下:你在添加什么方法?你确定你正在创建一个好的抽象吗?也许你最好使用一个类来定义你需要的方法,并在内部使用一个“普通”的dict。 工厂功能: http://en.wikipedia.org/wiki/Factory_method_pattern 它只是将实例的构造委托给函数的一种方法,而不是重写/更改其构造函数。 |
|
|
2
10
通常应调用基类'
或者不重写
我们不应该假定基类在做什么或不做什么,不调用基类是错误的
|
|
|
3
3
在子类化dict时要小心酸洗;例如,这需要在2.7中使用“getnewargs”, 可能在旧版本中设置了状态。(我不知道为什么。)
|
|
|
4
2
PEP 372 处理将有序dict添加到collections模块。 它警告说,“对dict进行子类化是一项非常重要的任务,许多实现没有正确地重写所有方法,这可能导致意外的结果。”
提议(和接受)
patch
到python3.1使用
基于此,看起来
编辑:
如果您没有覆盖或扩展
|
|
|
bairog · 从按属性筛选的对象数组字典中创建值数组 1 年前 |
|
|
prayner · 更新嵌套字典包含列表中的项 1 年前 |
|
|
KGB91 · 初始化一个用C存储函数的字典# 1 年前 |
|
|
Pavel Foltyn · 如何在C中生成逆字典# 1 年前 |
|
|
user24242514 · 将嵌套查询字符串请求转换为字典 1 年前 |
|
|
Pernoctador · Python映射可以复制吗?我需要参考地图 1 年前 |
|
|
masher · 如何将字典键的值直接赋值给另一个变量? 1 年前 |
|
|
Lyapunov1729 · 如何按项目连接字典 1 年前 |