原字典为:
{'gfg': 1, 'best': 6, 'geeks': 3, 'for': 7, 'is': 4}
最上面的N = 3
值对是['for', 'best', 'is']
(按值排序),但我需要['best', 'for', 'is']
(原始字典顺序)。
字典是按插入顺序排列的,但我们不能真正谈论位置。一个可接受的解决方案是:
>>> d = {'gfg': 1, 'best': 6, 'geeks': 3, 'for': 7, 'is': 4}
>>> cutoff = sorted(d.values())[-3]
>>> [k for k, v in d.items() if v >= cutoff][:3]
['best', 'for', 'is']