首先,这个问题不是Most efficient method to get key for a value in a dict的重复,询问者询问了python,也因为我想讨论下面给出的解决方案是否合理,如果可以的话这样的问题。从javascript中获取关键值的有效方法
所以,让我们假设,我有以下一个下列数据结构:
{
"one" : "1",
"two" : "2",
.
.
"hundred thousand" : "100000"
}
现在,我希望能够得到针对特定值键(假设我不会有不同的密钥相同的值)。一种解决方案是通过遍历数据,但如何高效能成为我们的代码,如果我们构建我们的数据,以获得关键:
data = [
{
"one" : "1",
"two" : "2",
.
.
"hundred thousand" : "100000"
},
{
"1" : "one",
"2" : "two",
.
.
"100000" : "hundred thousand"
}
]
所以,现在data[0]."two"
可以用来获得两个值。但是,假设有一种情况我知道这个值是999,我想知道它是关键,所以为了得到它的密钥我会做data[1]."999"
,即我将使用data [1]中的反转数据。
该解决方案可能比迭代数据找到正确的密钥更快。你怎么看?
我没有办法在标准的Javascript中做到这一点,不涉及迭代整套元素。另外,重要的是要指出,如果你在这个问题上谈论Javascript,那么你上面的是不是一个字典,而是一个_objects_数组。看看这个问题:http://stackoverflow.com/questions/9907419/javascript-object-get-key-by-value – 2012-07-09 12:35:45
字典总是排序,如你的例子所示? – 2012-07-09 12:37:11
不,不一定。 – baltoro 2012-07-09 12:40:30