0

我知道这很容易实现。

我想要一个类字典,它在构造函数中获取字典列表。

如果你从这个字典中按键读取,字典类应该检查字典列表并返回第一个值。如果没有包含这个键 KeyError 应该像普通的字典一样被抛出。

这个字典容器应该仅供我使用。

4

3 回答 3

3

您似乎在描述collections.ChainMap,它将出现在 Python 的下一个版本(3.3,预计将在今年晚些时候发布)中。collections对于当前/早期版本的 Python,您可以从源代码中复制实现。

于 2012-05-31T10:39:42.297 回答
0

没有真正回答这个问题:如果您只是定义将所有字典合并为一个的方法怎么办?为什么要为它开设新课程?
如何合并:如何在一个表达式中合并两个 Python 字典?
Varargs:可以将可变数量的参数传递给函数吗?

于 2012-05-31T10:35:12.273 回答
0

您可以使用此逻辑轻松实现这一点。

  1. 遍历列表中的所有字典。
  2. key in value对于每个字典,通过 using语句查看它是否具有所需的键 。
  3. 如果找到值,则从函数返回值。
  4. 如果您遍历了所有字典,但未找到值,则引发 KeyError 异常。
于 2012-05-31T10:37:43.823 回答