经常使用到的一个方法是对字典类型的数据结构根据value来进行排名,注意是排名不是排序。所以记录一下,可以供后来者使用。
x = {'a':2.1, 'b':2.1, 'c':5.2, 'd':6}
r = {key: rank for rank, key in enumerate(sorted(x.values(),reverse=True), 1)}
print(r)
# {2.1: 4, 5.2: 2, 6: 1}
rr = {k: r[v] for k,v in x.items()}
print(rr)
# {'b': 4, 'a': 4, 'd': 1, 'c': 2}
所以可以看出d排第一,c排第二,a和b并列排第四。
————————————EOF——————————–