首先,這個問題不是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