下面是统计数组中元素出现次数并进行排序的实例攻略。
需求分析
我们需要统计一个数组中各个元素出现的次数,并按照出现频率进行排序。我们可以使用 Python 的字典结构来达到这个目的。
实现步骤
- 定义一个列表或数组存储数据。
- 构建字典结构,遍历列表/数组,统计每个元素出现次数。
- 对字典按照值进行升序或降序排序。
- 输出排序后的字典,包括元素及其出现次数。
代码实现示例1
下面是一个示例,先用 collections
模块的 Counter
函数统计出现次数,再按照次数排序。代码如下:
from collections import Counter
arr = [1, 2, 4, 2, 4, 1, 3, 5, 1, 3, 4]
count = Counter(arr)
sorted_count = dict(sorted(count.items(), key=lambda x: x[1], reverse=True))
print(sorted_count)
输出结果:
{1: 3, 4: 3, 2: 2, 3: 2, 5: 1}
可以看到,输出结果中每一个键对应的值即为该元素出现的次数,已经按照出现次数降序排列。
代码实现示例2
这里是另一个示例,使用 Python 原生字典键值对存储,并利用 sorted
方法按值排序。代码如下:
arr = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
count_dict = {}
for i in arr:
if i in count_dict:
count_dict[i] += 1
else:
count_dict[i] = 1
sorted_count_dict = dict(sorted(count_dict.items(), key=lambda x: x[1], reverse=True))
print(sorted_count_dict)
输出结果:
{5: 3, 1: 2, 3: 2, 4: 1, 9: 1, 2: 1, 6: 1}
可以看到,输出结果中每一个键对应的值即为该元素出现的次数,已经按照出现次数降序排列。
总结
通过上述分析与示例,我们可以学习到用 Python 统计列表或数组中元素出现次数并进行排序的方法。与字典相关的函数 Counter
和 sorted
可以大大简化统计和排序的代码实现。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 统计数组中元素出现次数并进行排序的实例 - Python技术站