Python统计列表元素出现次数的方法示例

作者:寸草心2130 时间:2021-03-06 00:43:23 

1. 引言

在使用Python的时候,通常会出现如下场景:


array = [1, 2, 3, 3, 2, 1, 0, 2]

获取array中元素的出现次数

比如,上述列表中:0出现了1次,1出现了2次,2出现了3次,3出现了2次。

本文阐述了Python获取元素出现次数的几种方法。点击获取完整代码。

2. 方法

获取元素出现次数的方法较多,这里我提出如下5个方法,谨供参考。下面的代码,传入的参数均为


array = [1, 2, 3, 3, 2, 1, 0, 2]

2.1 Counter方法

该方法可以迅速获取list中元素出现的次数,可以参考官方文档


from collections import Counter
def counter(arr):
 return Counter(arr).most_common(2) # 返回出现频率最高的两个数

# 结果:[(2, 3), (1, 2)]

2.2 list中的count,获取每个元素的出现次数


def single_list(arr, target):
 return arr.count(target)

# target=2,结果:3

2.3 list中的count,获取所有元素的出现次数

返回一个dict


def all_list(arr):
 result = {}
 for i in set(arr):
   result[i] = arr.count(i)
 return result

# 结果:{0: 1, 1: 2, 2: 3, 3: 2}

2.4 Numpy花式索引,获取每个元素的出现次数


def single_np(arr, target):
 arr = np.array(arr)
 mask = (arr == target)
 arr_new = arr[mask]
 return arr_new.size

# target=2,结果:3

2.5 Numpy花式索引,获取所有元素的出现次数

返回一个dict


def all_np(arr):
 arr = np.array(arr)
 key = np.unique(arr)
 result = {}
 for k in key:
   mask = (arr == k)
   arr_new = arr[mask]
   v = arr_new.size
   result[k] = v
 return result

# 结果:{0: 1, 1: 2, 2: 3, 3: 2}

3. 总结

来源:https://blog.csdn.net/qq_35531549/article/details/88721117

标签:Python,列表,元素
0
投稿

猜你喜欢

  • 教你使用SQL Server数据库进行网络链接

    2009-01-13 13:41:00
  • 一篇教程教你学会Python进制转换(十进制转二进制、八进制、十六进制)

    2022-10-04 06:56:04
  • 利用python实现可视化大屏

    2023-08-17 17:29:17
  • asp中的rs.open与conn.execute的区别说明

    2011-02-24 10:56:00
  • php实现xml与json之间的相互转换功能实例

    2023-11-22 05:38:00
  • PHP将amr音频文件转换为mp3格式的操作细节

    2023-06-15 22:20:35
  • 如何从MySQL数据库表中检索数据

    2008-11-01 17:08:00
  • python实现读取excel表格详解方法

    2023-03-12 04:48:37
  • Python采集某评论区内容的实现示例

    2023-02-28 15:07:10
  • mysql数据库你需要特别注意的23个事项

    2010-08-08 08:34:00
  • JavaScript 与 ActionScript 3.0 交互的一些问题

    2008-01-27 12:20:00
  • ie7.0浏览器 兼容问题苦煞网站设计者

    2007-08-08 17:11:00
  • php微信公众号开发之快递查询

    2023-11-11 03:30:36
  • PDO::getAvailableDrivers讲解

    2023-06-08 22:24:20
  • asp如何验证信用卡是否可用?

    2010-06-10 18:39:00
  • php输出xml必须header的解决方法

    2023-09-11 20:00:16
  • PHP字符串中提取文件名的实例方法

    2023-06-12 18:57:32
  • Check In和Check Out的多人协作管理

    2007-02-03 11:39:00
  • 判断触发器正在处理的是插入,删除还是更新触发

    2012-01-29 18:30:34
  • Python语言基础之函数语法

    2021-11-06 23:18:44
  • asp之家 网络编程 m.aspxhome.com