问题标签 [dictionary-missing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
701 浏览

python - 宽容的字典

我想知道如何创建宽容的字典(如果引发 KeyError 则返回默认值的字典)。

在下面的代码示例中,我会得到一个 KeyError;例如

为了不得到一个,我会 1. 必须捕获异常或使用 get。

我不想用我的字典这样做......

0 投票
6 回答
24633 浏览

python - 如何制作一个字典,返回字典中缺少的键的键而不是引发 KeyError?

我想创建一个 python 字典,返回字典中缺少键的键值。

使用示例:

0 投票
4 回答
162 浏览

python - Python:如何将函数分配给对象属性?

基本上,这始于我在尝试查找字典中是否存在索引时遇到的问题:

但是当索引真的不存在时,它会给我一个 KeyError。因此,阅读 Python 文档。如果缺少() 被定义,它不会抛出KeyError

终端上的上述代码给了我:

那么,如何正确地做到这一点呢?顺便说一句,我将需要在此使用 Python 2.7。在 Python 3 上运行时有区别吗?

0 投票
1 回答
1452 浏览

python - insertdict_clean:断言错误

我在 python 2.6.6 中收到以下错误:

以下是蒸馏的来源:

我怀疑mutation_count是导致问题的原因,它是由以下定义的计数器:

只有当我有大约 1M 键并且在大约 20% 的运行中出现时,我才会看到这个问题。

0 投票
1 回答
9246 浏览

python - Python 2 __missing__ 方法

我编写了一个非常简单的程序来子类化字典。我想试试__missing__python中的方法。经过一番研究,我发现在 Python 2 中它可以在defaultdict. (在 python 3 中,我们使用 collections.UserDict 。)如果找不到密钥,则__getitem__负责调用该方法。__missing__

当我__getitem__在以下程序中实施时,我得到一个关键错误,但是当我没有它实施时,我得到了所需的值。

我认为我需要实现__getitem__,因为它负责调用__missing__. 我知道 defaultdict 的类定义有一个__getitem__方法。但即便如此,假设我想自己写__getitem__,我会怎么做?

0 投票
3 回答
7068 浏览

python-2.7 - functools.wrapper - AttributeError: 'type' 对象的属性 '__doc__' 不可写

在执行下面的代码时,我得到AttributeError: attribute '__doc__' of 'type' objects is not writable.

追溯:

即使提供了文档字符串,我也不知道这有什么问题。

如果不包装它可以正常工作,但我需要这样做。

0 投票
1 回答
3319 浏览

python - 如何使用 defaultdict 行为扩展 OrderedDict

我有一个OrderedDict对象列表。我想将所有这些组合在一起,然后按每个水果的属性对它们进行排序。我一直在尝试defaultdict使用以下代码对它们进行组合和排序:

有了这个,我得到一个键和所有相关的值,但我失去了原来的顺序。所以我试图用 来做OrderedDict,但我无法让它工作。这是我尝试过的:

我的主要目标是保持字典的原始顺序,但OrderedDict根据水果键将它们组合成三个不同的对象。