问题标签 [dictionary]

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 回答
4712 浏览

python - 地图等价物是什么> 在 Python 中?

在 C++ 中经常做这样的事情:

然后我像这样使用它:

如果地图中没有条目,代码将插入一个新的空向量,然后附加到它。

在 Python 中,它看起来像这样:

除了这里的尝试有点难看。当在字典声明时遇到 KeyError 时,有没有办法告诉字典要插入的对象类型?

0 投票
13 回答
163413 浏览

c++ - 在 STL 映射中,使用 map::insert 比使用 [] 更好吗?

前段时间,我和一位同事讨论了如何在 STL映射中插入值。我更喜欢map[key] = value;它,因为它感觉自然并且读起来很清楚,而他更喜欢map.insert(std::make_pair(key, value))

我刚问过他,我们都不记得为什么 insert 更好,但我相信这不仅仅是一种风格偏好,而是效率等技术原因。SGI STL 参考简单地说: “严格来说,这个成员函数是不必要的:它只是为了方便而存在。”

谁能告诉我这个原因,还是我只是梦想有一个?

0 投票
1 回答
4010 浏览

delphi - 如何声明 TDictionary 枚举器?

我有一个 TDictionary 存储一堆按名称索引的对象,我希望能够检查所有对象。所以我尝试了这个:

但这不会编译。“不兼容的类型:‘TMyObject’和‘TPair’

所以我尝试了一些不同的方法:

那也没有编译。这个错误信息更奇怪:不兼容的类型:'TPair'和'TPair'

所以显然我需要某种时髦的语法来用for .. in循环枚举我的字典。有人知道如何正确申报吗?

编辑:Fabio Gomes 给出了一个可以正常工作的示例,但我的代码仍然无法使用他的方法进行编译。也许是因为我在不同的单位工作?字典和它用于 Value 端的类都定义在一个单元中,而这段代码在别处。这是否使它成为编译器中的错误?任何人都可以验证这一点吗?

编辑2:发现问题。 http://qc.embarcadero.com/wc/qcmain.aspx?d=69461如果有人感兴趣的话。

0 投票
3 回答
1457 浏览

c# - 希望关于在 C# 中修改字典的简单问题

我在一个名为 current 的变量中有一个巨大的空白值字典,如下所示:

所以我正在遍历这本字典,需要填写“答案”,如下所示:

现在,这不起作用,因为我尝试修改正在循环的字典时得到了 InvalidOperationException。但是,您可以看到代码应该可以正常工作 - 因为我没有添加或删除任何值,只是修改了值。但是,我理解为什么它害怕我尝试这样做。

这样做的首选方法是什么?在不使用迭代器的情况下,我想不出一种方法来遍历字典。

我真的不想创建整个数组的副本,因为它包含大量数据并且会像感恩节一样吃掉我的内存。

谢谢,戴夫

0 投票
3 回答
114869 浏览

python - Python 的内置字典是如何实现的?

有谁知道python的内置字典类型是如何实现的?我的理解是它是某种哈希表,但我无法找到任何明确的答案。

0 投票
4 回答
93734 浏览

python - 在 Python 字典中存储和更新列表:为什么会发生这种情况?

我有一个如下所示的数据列表:

...我想让它看起来像:

我的计划是使用字典,其中 t 的值是字典的键,而键的值将是一个列表。然后我可以将每个 (x,y) 附加到列表中。就像是:

现在这会导致 IDLE 失败。但是,如果我这样做:

...这行得通。

所以问题是:为什么代码 2 有效,但代码 1 无效?

PS 对我计划做的任何改进都会引起极大的兴趣!我想我必须通过输入检查每个循环上的字典,看看字典键是否已经存在,我猜是通过使用类似 max(d.keys()): 如果它存在,附加数据,如果不创建空列表作为字典值,然后在下一个循环中追加数据。

0 投票
4 回答
5723 浏览

c# - 哈希表到 Dictionary<> syncroot 。

哈希表具有同步根属性,但通用字典没有。如果我有这样做的代码:

如果我要删除哈希表并更改为通用字典,我该如何复制它?

0 投票
4 回答
284650 浏览

python - 将字典作为关键字参数传递给函数

我想使用字典在 python 中调用一个函数。

这是一些代码:

这会打印{'param': 'test'},但我希望它只是 print test

我希望它对更多参数有类似的工作:

这可能吗?

0 投票
1 回答
498 浏览

.net - 有没有像字典一样工作但没有值的集合?

我需要一个像 Dictionary/Hashtable 一样工作的集合,从某种意义上说,它在任何时候都只会包含给定对象的 1 个实例。一个通用类会更好,但我会尽我所能。这个集合是否存在于框架中的某个地方?

0 投票
5 回答
44831 浏览

.net - 如何在我的 web.config 文件中存储字典对象?

我想在我的网络配置文件中存储一个简单的键/值字符串字典。Visual Studio 可以轻松存储字符串集合(请参见下面的示例),但我不确定如何使用字典集合来完成。