2
如何在字典上執行以下操作(前提是我的所有值都是唯一的和未排序的)。通過值獲取鍵,在字典中
key : value
152 : 780
87 : 688
2165 : 15
- 我想所有的密鑰。
- 我想查找關鍵值688
- 我想獲取所有值。
優選地,沒有循環並且不必在外部對象中維持鍵 - 值關係。
我有時會錯過,python的這些東西。
如何在字典上執行以下操作(前提是我的所有值都是唯一的和未排序的)。通過值獲取鍵,在字典中
key : value
152 : 780
87 : 688
2165 : 15
優選地,沒有循環並且不必在外部對象中維持鍵 - 值關係。
我有時會錯過,python的這些東西。
如果鍵是整數值,Array可能會有所幫助。它是一個稀疏陣列;所以爲和每個將只處理已被分配一個值的鍵(雖然我不知道內存使用情況)。
所以:
var list: Array = [];
list[1] = 10;
list[4] = 40;
for each(var value: int in list) trace(value);
// outputs (order can be different)
// 10
// 40
// index has to be * or String; the compiler gives an error if it is not
for(var index: * in list) trace(index);
// outputs (order can be different)
// 1
// 4
有一個方法的indexOf來獲取的值的鍵;沒有簡單的功能來獲得所有的密鑰。
如果沒有迭代你的字典的代價,你無法做任何事情。所以維護另一個對象似乎是你需要做的。
我認爲這是你想要的,以前在這個線程中回答: http://stackoverflow.com/questions/2386793/efficient-looping-through-as3-dictionary –