dic = {
1: 'a',
2: 'a',
3: 'b',
4: 'a',
5: 'c',
6: 'd',
7: 'd',
8: 'a',
9: 'a'}
我想刪除重複的值只是保持一個K/V對, 關於「鍵」選擇那些重複值的,其可以是最大或最小或通過隨機選擇其中的一個重複項目的關鍵。
我不想使用k/v交換,因爲它無法控制密鑰選擇。
採取值 「a」,例如
1: 'a',
2: 'a',
4: 'a',
8: 'a',
9: 'a'
最大關鍵將是{9: 'A'}和最小將是{1: 'A'},以及隨機會的choise任一項的。
而且,如果關鍵字是其他類型的可哈希值,例如string,那麼如何做這樣的選擇?
任何人都可以分享我的想法嗎?
謝謝!
你可以翻轉它,讓鍵是值,反之亦然? – sas4740 2010-08-04 03:25:21
OP確實說過「我不想使用ak/v swap,因爲它無法控制密鑰選擇」 - 模糊,但我認爲這意味着值可能是列表,字典或其他不可接受的對象作爲關鍵。 – 2010-08-04 05:29:32