时间:2021-07-01 10:21:17 帮助过:78人阅读
假设一个list中保存着各种元素,需要统计每个元素出现的个数,并打印出最常出现的前三个元素分别是什么。list如下:
方法一(常规方法):
>>> word_counter ={} >>> for word in word_list: if word in word_counter: word_counter[word] +=1 else: word_counter[word] = 1 >>> popular_word =sorted(word_counter, key = word_counter.get, reverse = True) ) >>> top_3 = popular_word[:3] >>> top_3 ['is', 'OK', 'I']
方法二:适用于Python2.7
>>> from collections import Counter >>> c = Counter(word_list) >>> c.most_common(3)
方法三:
>>> counter ={} >>> for i in word_list: counter[i] = counter.get(i, 0) + 1 >>> sorted([ (freq,word) for word, freq in counter.items() ], reverse=True)[:3] [(4, 'is'), (3, 'OK'), (2, 'I')]
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python列表(list)操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。