这里有很多关于在Python中对字典排序的帖子,所以我仔细阅读了它们,希望这不是重复的:
我正在使用一个字典来保存单词作为键和单词出现次数作为值。这会导致一个类似于以下的字典:
John 1
Robert 5
Susie 15
Alex 6
我希望您能按照出现次数(即“值”)对它们进行排序。
John 1
Robert 5
Alex 6
Susie 15
我正在使用下面的代码尝试对我的字典进行排序:
sorted_words = sorted(words.iteritems(), key=itemgetter(1))
然而,这将返回一个按顺序排列的元组列表,看起来像这样:
John 1
Susie 15
Robert 5
Alex 6
您可以看到问题在于,使用上述代码后,值按“字母顺序”排序,所以15跟在1后面,即使在数学上,15> 5和6,因此应该是最后一个。
我该如何修复代码以将值视为INT而不是字符串。
str
还是int
? - squiguykey=lambda x: int(x[1])
。 - zhangxaochen