这是我目前拥有的字典:
{"214123" : 75.0,
"153525" : 60.0,
"734829" : 40.0,
"992832" : 89.0,
"823482" : 80.0}
我想按降序对字典中的值进行排序,然后只显示前 3 个值。
预期输出:
{"992832" : 89.0,
"823481" : 80.0,
"214123" : 75.0}
我正在使用 Python 3.0,我当前的代码是:
prices = []
data[listing_id] = price
for listing, price in data.items():
prices.append(price)
prices.sort(reverse=True)
top3 = prices[0:2]
从这里我不知道如何将我的值分配回字典。我应该怎么办?谢谢 (-:
对于 3.6+:
dict(sorted(list(d.items()), key=lambda p: p[1], reverse=True)[:3])
<3.6:
import collections
collections.OrderedDict(sorted(list(d.items()), key=lambda p: p[1], reverse=True)[:3])
我是一名优秀的程序员,十分优秀!