0
A
回答
1
您可以使用簡單的列表理解表達爲:
>>> sorted(my_dict, key=my_dict.get, reverse=True)[:3]
['K', 'B', 'A']
,或者如果你可以使用collections.Counter()
還需要價值:
>>> from collections import Counter
>>> my_dict = {"A":3,"B":4,"H":1,"K":8,"T":0}
>>> c = Counter(my_dict)
>>> mc = c.most_common(3) # returns top 3 values
# content of mc: [('K', 8), ('B', 4), ('A', 3)]
# For getting the keys from "mc":
# >>> [key for key, val in mc]
# ['K', 'B', 'A']
+3
不需要使用Counter,真的。只是'排序(d,key = d.get,reverse = True)[:3]'。 –
相關問題
- 1. 從字典中獲得最大價值
- 2. 如何從字典中獲得價值
- 3. 如何從字典中獲得價值..?
- 4. 如何從一個表字段來獲得最高的價值
- 5. 字典詞典,如何獲得價值?
- 6. 如何獲得最大的價值從Python字典
- 7. 如何獲得價值最高的排?
- 8. 從字典中獲得價值
- 9. scrollpath.js獲得最高價值
- 10. 獲得價值由字典
- 11. SQL查詢 - 如何獲得最高評價的項目?
- 12. 從項目中獲得價值UitableView
- 13. 如何獲得CheckBoxList的項目價值
- 14. 如何從字典中獲得雙重價值?
- 15. 如何在6個變量中獲得3個最高值?
- 16. 獲得一個項目的價值
- 17. java,從多個陣列中獲得最高價值
- 18. MYSQL - 如何獲得每個記錄的最高價值?
- 19. 如何從字符串列表獲得最大的價值值
- 20. MongoDB - 獲得最高的兒童價值
- 21. 排序字典鍵內的列表 - 從列表中獲得最高分3
- 22. 如何從字典中獲得具有特定值的所有項目?
- 23. 如何一次性更新字典中的所有項目的字典價值?
- 24. 如何從哈希中獲得最高的第二個值
- 25. 從字典中獲取價值
- 26. 從字典中獲取價值
- 27. 如何從表中獲得3個最高值並將其打印出來?
- 28. 如何獲得詞典列表中具有最高值的詞典的索引
- 29. Oracle:如何獲得列表中每個項目的最大值
- 30. 根據最高價值從列表中獲得前5名
使用'd = {「A」:3,「B」:4,「H」:1,「K」:8,「T」:0}',你可以做'dict(sorted(d。 iteritems(),key = operator.itemgetter(1),reverse = True)[:3]).key()',打印'['A','K','B']' – davedwards
不完全重複 - - 這個問題要求3(或N)個最大,另一個問題的答案是按照價值排序的整個字典。在很多情況下,您可以通過使用'heapq.nlargest'來更高效地獲取N個最大值:'import heapq; heapq.nlargest(3,my_dict,key = my_dict.get)'。 –