在 Python 的元组列表中寻找频率


Python 中可以混合多种不同类型的数据容器。列表可以包含元组的元素。在本文中,我们将使用此类列表,查找作为列表元素的元组中的元素的频率。

使用 count 和 map

我们应用一个 lambda 函数,计算列表中元组中每个第一个元素的次数。然后应用一个 map 函数,计算我们正在寻找的元素的总数。

示例

 实时演示

# initializing list of tuples
listA = [('Apple', 'Mon'), ('Banana', 'Tue'), ('Apple', 'Wed')]

# Given list
print("Given list of tuples : " ,listA)

# Frequency in list of tuples
Freq_res = list(map(lambda i: i[0], listA)).count('Apple')

# printing result
print("The frequency of element is : ",Freq_res)

输出

运行以上代码,将为我们提供以下结果

Given list of tuples : [('Apple', 'Mon'), ('Banana', 'Tue'), ('Apple', 'Wed')]
The frequency of element is : 2

使用 Counter

我们还可以实现 Counter,它将计算某个元素出现的次数。我们使用一个 for 循环,遍历列表中出现的每个元组。

示例

 实时演示

from collections import Counter

# initializing list of tuples
listA = [('Apple', 'Mon'), ('Banana', 'Tue'), ('Apple', 'Wed')]

# Given list
print("Given list of tuples : " ,listA)

# Frequency in list of tuples
Freq_res = Counter(i[0] for i in listA)['Apple']

# printing result
print("The frequency of element is : ",Freq_res)

输出

运行以上代码,将为我们提供以下结果 -

Given list of tuples : [('Apple', 'Mon'), ('Banana', 'Tue'), ('Apple', 'Wed')]
The frequency of element is : 2

更新于: 05-May-2020

437 次浏览

开启您的 职业

通过完成课程获取认证

开始
广告