Tag: 字典

为什么检查字典是否包含密钥更快,而不是在exception情况下捕获exception?

想象一下代码: public class obj { // elided } public static Dictionary<string, obj> dict = new Dictionary<string, obj>(); 方法1 public static obj FromDict1(string name) { if (dict.ContainsKey(name)) { return dict[name]; } return null; } 方法2 public static obj FromDict2(string name) { try { return dict[name]; } catch (KeyNotFoundException) { return null; } } 我很好奇,这两个函数的性能是否有差别,因为第一个函数应该比第二个函数小 – 这是因为如果字典包含一个值,它需要检查两次,而第二个函数只需要访问字典一次,但是WOW,它实际上是相反的: […]

在Python中创build一个新的字典

我想在Python中build立一个字典。 但是,我所看到的所有例子都是从列表中实例化一个字典,等等。 .. 如何在Python中创build一个新的空字典?

.NET的HashTable Vs字典 – 字典可以一样快吗?

我想弄清楚什么时候以及为什么要使用Dictionary或HashTable。 我在这里做了一些search,发现人们在谈论“词典”的通用优势,我完全同意这个观点,这个优势在拳击和拆箱方面略有提升。 但是我也读了Dictionary,它并不总是按照它们插入的顺序返回对象,它对它进行sorting。 作为一个HashTable将在哪里。 据我所知,这导致HashTable在某些情况下快得多。 我的问题是,这些情况可能是什么? 我在上面的假设中错了吗? 你可以用什么样的情况来select一个在另一个之上,(是的,最后一个是有点模糊的)。

正确的方法来初始化一个C#字典的值已经在它?

我正在用下面的代码在C#文件中创build一个字典: private readonly Dictionary<string, XlFileFormat> FILE_TYPE_DICT = new Dictionary<string, XlFileFormat> { {"csv", XlFileFormat.xlCSV}, {"html", XlFileFormat.xlHtml} }; 在new的下面有一个红线,错误: function“集合初始化程序”不能被使用,因为它不是ISO-2 C#语言规范的一部分 任何人都可以解释这里发生了什么? 编辑:好的,所以事实certificate,我使用.NET版本2。

将字典列表转换为Dataframe

我有这样的字典列表: [{'points': 50, 'time': '5:00', 'year': 2010}, {'points': 25, 'time': '6:00', 'month': "february"}, {'points':90, 'time': '9:00', 'month': 'january'}, {'points_h1':20, 'month': 'june'}] 我想把它变成一个像这样的pandasDataFrame : month points points_h1 time year 0 NaN 50 NaN 5:00 2010 1 february 25 NaN 6:00 NaN 2 january 90 NaN 9:00 NaN 3 june NaN 20 NaN NaN 注意:列的顺序无关紧要。 最终目标是将其写入文本文件,这似乎是我能find的最佳解决scheme。 如何将字典列表变成pandas数据框如上所示?

为什么dict.get(键)而不是字典?

今天,我遇到了dict方法get哪个给定的字典中的键,返回相关的值。 这个function有什么用处? 如果我想在字典中find一个与键相关的值,我可以做dict[key] ,并返回相同的结果: dictionary = {"Name": "Harry", "Age": 17} dictionary["Name"] dictionary.get("Name")

如何查找给定的键是否存在于C ++ std :: map中

我试图检查给定的键是否在地图上,有些不能这样做: typedef map<string,string>::iterator mi; map<string, string> m; m.insert(make_pair("f","++–")); pair<mi,mi> p = m.equal_range("f");//I'm not sure if equal_range does what I want cout << p.first;//I'm getting error here 那我该如何打印p中的内容呢?

Python“扩展”为一个字典

哪一个是用另一个扩展字典的最好方法? 例如: >>> a = { "a" : 1, "b" : 2 } >>> b = { "c" : 3, "d" : 4 } >>> a {'a': 1, 'b': 2} >>> b {'c': 3, 'd': 4} 我正在寻找任何操作来获得这避免for循环: { "a" : 1, "b" : 2, "c" : 3, "d" : 4 } 我希望做一些事情: a.extend(b) # This […]

如何更新在C#中存储在Dictionary中的值?

如何更新字典中的特定键的值Dictionary<string, int> ?

在Python中访问字典中的任意元素

如果一个dict不是空的,我访问一个任意的元素为: dict[dict.keys()[0]] 有没有更好的方法来做到这一点?