计算Python中元组列表中的元组出现

列表由元组组成。在本文中,我们将计算列表中存在的唯一元组的数量。

使用defaultdict

我们将给定列表视为defaultdict数据容器,并使用in条件对其中的元素进行计数。

示例

import collections
Alist = [[('Mon', 'Wed')], [('Mon')], [('Tue')],[('Mon', 'Wed')] ]
# Given list
print("Given list:\n", Alist)
res = collections.defaultdict(int)
for elem in Alist:
   res[elem[0]] += 1
print("Count of tuples present in the list:\n",res)

输出结果

运行上面的代码给我们以下结果-

Given list:
[[('Mon', 'Wed')], ['Mon'], ['Tue'], [('Mon', 'Wed')]]
Count of tuples present in the list:
defaultdict(, {('Mon', 'Wed'): 2, 'Mon': 1, 'Tue': 1})

带柜台和链条

计数器和链函数是集合和itertools模块的一部分。一起使用它们,我们可以获得列表中每个元素的计数。

示例

from collections import Counter
from itertools import chain
Alist = [[('Mon', 'Wed')], [('Mon')], [('Tue')],[('Mon', 'Wed')] ]
# Given list
print("Given list:\n", Alist)
res = Counter(chain(*Alist))
print("Count of tuples present in the list:\n",res)

输出结果

运行上面的代码给我们以下结果-

Given list:
[[('Mon', 'Wed')], ['Mon'], ['Tue'], [('Mon', 'Wed')]]
Count of tuples present in the list:
Counter({('Mon', 'Wed'): 2, 'Mon': 1, 'Tue': 1})