Python学习笔记之从list中统计相同数字的个数
有时候我们需要从list中统计list中某个数据或者所有不同的数据分别的个数,按照一般的思路是对list进行遍历,但是我们可以只用list与set就可以完成这个功能:
这里我们有一个list如下
>>> a = [1,1,1,1,2,2,2,2,3,3,3,1,1,2,3,1,3,1,3,1,3,1,2,3,1,3]
>>> a
[1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 1, 1, 2, 3, 1, 3, 1, 3, 1, 3, 1, 2, 3, 1, 3]
现在我们需要统计其中1,2,3分别的个数
这里我们可以先用set将list中的重复元素去掉:
>>> set(a)
{1, 2, 3}
因为set类似于一个没有value的字典,它会合并相同的元素,保留不同的元素
接下来我们使用list中的一个函数count就可以统计list中某个数据在list中出现的次数:
>>> a.count(1)
11
所以当我们需要统计一个list中所有不同的数据出现的次数,就可以使用一个循环得到:
“`python
for i in set(a):
… print(‘数据{0}在list中的个数为:{1}’.format(i,a.count(i)))
…
数据1在list中的个数为:11
数据2在list中的个数为:6
数据3在list中的个数为:9“`