问题标签 [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.
python - 地图等价物是什么> 在 Python 中?
在 C++ 中经常做这样的事情:
然后我像这样使用它:
如果地图中没有条目,代码将插入一个新的空向量,然后附加到它。
在 Python 中,它看起来像这样:
除了这里的尝试有点难看。当在字典声明时遇到 KeyError 时,有没有办法告诉字典要插入的对象类型?
c++ - 在 STL 映射中,使用 map::insert 比使用 [] 更好吗?
前段时间,我和一位同事讨论了如何在 STL映射中插入值。我更喜欢map[key] = value;
它,因为它感觉自然并且读起来很清楚,而他更喜欢map.insert(std::make_pair(key, value))
。
我刚问过他,我们都不记得为什么 insert 更好,但我相信这不仅仅是一种风格偏好,而是效率等技术原因。SGI STL 参考简单地说: “严格来说,这个成员函数是不必要的:它只是为了方便而存在。”
谁能告诉我这个原因,还是我只是梦想有一个?
delphi - 如何声明 TDictionary 枚举器?
我有一个 TDictionary 存储一堆按名称索引的对象,我希望能够检查所有对象。所以我尝试了这个:
但这不会编译。“不兼容的类型:‘TMyObject’和‘TPair’
所以我尝试了一些不同的方法:
那也没有编译。这个错误信息更奇怪:不兼容的类型:'TPair'和'TPair'
所以显然我需要某种时髦的语法来用for .. in循环枚举我的字典。有人知道如何正确申报吗?
编辑:Fabio Gomes 给出了一个可以正常工作的示例,但我的代码仍然无法使用他的方法进行编译。也许是因为我在不同的单位工作?字典和它用于 Value 端的类都定义在一个单元中,而这段代码在别处。这是否使它成为编译器中的错误?任何人都可以验证这一点吗?
编辑2:发现问题。 http://qc.embarcadero.com/wc/qcmain.aspx?d=69461如果有人感兴趣的话。
c# - 希望关于在 C# 中修改字典的简单问题
我在一个名为 current 的变量中有一个巨大的空白值字典,如下所示:
所以我正在遍历这本字典,需要填写“答案”,如下所示:
现在,这不起作用,因为我尝试修改正在循环的字典时得到了 InvalidOperationException。但是,您可以看到代码应该可以正常工作 - 因为我没有添加或删除任何值,只是修改了值。但是,我理解为什么它害怕我尝试这样做。
这样做的首选方法是什么?在不使用迭代器的情况下,我想不出一种方法来遍历字典。
我真的不想创建整个数组的副本,因为它包含大量数据并且会像感恩节一样吃掉我的内存。
谢谢,戴夫
python - Python 的内置字典是如何实现的?
有谁知道python的内置字典类型是如何实现的?我的理解是它是某种哈希表,但我无法找到任何明确的答案。
python - 在 Python 字典中存储和更新列表:为什么会发生这种情况?
我有一个如下所示的数据列表:
...我想让它看起来像:
我的计划是使用字典,其中 t 的值是字典的键,而键的值将是一个列表。然后我可以将每个 (x,y) 附加到列表中。就像是:
现在这会导致 IDLE 失败。但是,如果我这样做:
...这行得通。
所以问题是:为什么代码 2 有效,但代码 1 无效?
PS 对我计划做的任何改进都会引起极大的兴趣!我想我必须通过输入检查每个循环上的字典,看看字典键是否已经存在,我猜是通过使用类似 max(d.keys()): 如果它存在,附加数据,如果不创建空列表作为字典值,然后在下一个循环中追加数据。
c# - 哈希表到 Dictionary<> syncroot 。
哈希表具有同步根属性,但通用字典没有。如果我有这样做的代码:
如果我要删除哈希表并更改为通用字典,我该如何复制它?
python - 将字典作为关键字参数传递给函数
我想使用字典在 python 中调用一个函数。
这是一些代码:
这会打印{'param': 'test'}
,但我希望它只是 print test
。
我希望它对更多参数有类似的工作:
这可能吗?
.net - 有没有像字典一样工作但没有值的集合?
我需要一个像 Dictionary/Hashtable 一样工作的集合,从某种意义上说,它在任何时候都只会包含给定对象的 1 个实例。一个通用类会更好,但我会尽我所能。这个集合是否存在于框架中的某个地方?
.net - 如何在我的 web.config 文件中存储字典对象?
我想在我的网络配置文件中存储一个简单的键/值字符串字典。Visual Studio 可以轻松存储字符串集合(请参见下面的示例),但我不确定如何使用字典集合来完成。