sort by actual values in a dictionary python
我在整理字典时遇到困难。我用下面的代码对它们进行排序
1 | sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) |
但问题是排序不是由实际值完成的。
1 2 3 | asdl 1 testin 42345 alpha 49 |
参考:用python对字典进行排序
我需要像下面这样分类的物品
1 2 3 | asdl 1 alpha 49 testin 42345 |
您遇到的行为是由比较变量的类型决定的。为了解决这个问题,把它铸造到
1 | orted(x.iteritems(), key=lambda x: int(x[1])) |
最终结果将是:
1 | [('asdl', '1'), ('alpha', '49'), ('testin', '42345')] |