Python按频率对文件进行排序
我有一个文件,其中包含一个单词列表,如: 字1 34 字12 字36 字4498 50字 我想按数值对文件进行排序。我的代码:Python按频率对文件进行排序,python,file,sorting,int,string,Python,File,Sorting,Int,String,我有一个文件,其中包含一个单词列表,如: 字1 34 字12 字36 字4498 50字 我想按数值对文件进行排序。我的代码: sortedfreqlist = sorted(freqlist, key=operator.itemgetter(1), reverse=True) 不太有效,因为它将数字按单词排序,即12在6之前,等等 有什么办法吗?在你最喜欢的搜索引擎中搜索“”,你会发现许多不同的解决方案 这里有一个 这是一个很好的例子。排序不起作用,因为您的值不是数字类型,因此应用了字典排序
sortedfreqlist = sorted(freqlist, key=operator.itemgetter(1), reverse=True)
不太有效,因为它将数字按单词排序,即12在6之前,等等
有什么办法吗?在你最喜欢的搜索引擎中搜索“”,你会发现许多不同的解决方案
这里有一个
这是一个很好的例子。排序不起作用,因为您的值不是数字类型,因此应用了字典排序。请确保将排序键转换为数字,例如:
sortedfreqlist = sorted(freqlist, key=lambda item: int(item[1]), reverse=True)
如果第二列中的所有项都可以解释为int,则这是正确的解决方案。我误解了这个问题。