如何在列表中的特定位置统计特定元素的出现次数?

3
例如,
a=[[a, 1], [b, 1], [1, 1]]

我想找到有多少个“1”,但只限于嵌套列表中的第二个元素。因此,它应该给我3,忽略第三个列表中的“1”,因为它是列表中的第一个元素。
3个回答

3

使用collections.Counter子类来计算任何值出现的次数:

import collections

a = [['a', 1], ['b', 1], [1, 1]]
counts = collections.Counter((l[1] for l in a))

print(counts[1])   # 3

2
你可以使用一个生成器和 sum()
>>> a = [['a', 1], ['b', 1], [1, 1]]
>>> sum(ele[1] == 1 for ele in a)
3

1
您可以使用:-
[item for sub_list in a[1:] for item in sub_list].count(1) # 3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接