今天小编给大家分享一下Python字符串,列表,字典和集合实例处理分析的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
1.如何统计序列中元素出现的频率并排序?
统计序列中元素出现的频率的结果肯定是一个字典,Key 为序列中的元素而 Value 为元素出现的次数,因此可以先创建一个字典,作为初始的统计结果,并假设初始出现的次数都为0。
对频率结果字典的 Value 进行排序
from random import randint# 生成包含重复元素的随机序列nums = [randint(0, 10) for num in range(20)]# 元素出现次数的统计最终肯定是一个字典,因此可以以元素的Key,出现的次数为Valuecount = dict.fromkeys(nums, 0)# 统计频次for num in nums: count[num] += 1# 排序方案一# 根据Value进行排序_count = sorted(count.values())# 获取最大的次数max = _count.pop()keys = []# 根据Value获取Keyfor k, v in count.items(): if v == max: keys.append(k)if __name__ == '__main__': print(nums) print(count) print(_count) print(max) print(keys)
出现的最大频次为4,且频次为4的元素是9和1
使用 Counter 对象进行排序
# 排序方案二from collections import Counter_count = Counter(count)# 中间代码不变if __name__ == '__main__': print(nums) print(count) print(_count) print(_count.most_common()) # 获取出现频次最高的三个元素 print(_count.most_common(3))
2.统计单词次数
import refrom collections import Counterzen = open('zen.txt').read()# 分割所有单词zen = re.split('\W+', zen)# print(zen)_zen = Counter(zen)print(_zen)_zen_3 = _zen.most_common(3)print('前三个出现频次最高的词:', _zen_3)
以上就是“Python字符串,列表,字典和集合实例处理分析”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。