我按照浮点值升序排序字典。这是我的代码
dicdata = {'mike': 15.12, 'jenny': 2.53, 'glenn' : 5.16, 'Meo': 1.01}
sorted_dicdata = sorted(dicdata.items(), key=operator.itemgetter(1), reverse=True)
输出不准确。它给了我 格伦:5.16 迈克:15.12 珍妮:2.53 MEO:1.01 我该如何解决这个问题?
答案 0 :(得分:2)
如果您希望从十进制到升序
,则以下代码有效 >>> import operator
>>> print sorted(dicdata.items(), key=operator.itemgetter(1))
[('Meo', 1.01), ('jenny', 2.53), ('glenn', 5.16), ('mike', 15.12)]
答案 1 :(得分:0)
以下正确排序字典(Python 2.7.9和Python 3.4.2)
>>> import operator
>>> dicdata={'mike':15.12, 'jenny':2.53, 'glenn': 5.16, 'Meo': 1.01}
>>> sorted_dicdata = sorted(dicdata.items(), key=operator.itemgetter(1), reverse=True)
>>> sorted_dicdata
[('mike', 15.12), ('glenn', 5.16), ('jenny', 2.53), ('Meo', 1.01)]
我在字典键周围加上引号,因为我认为它们是字符串。