符合Python中特定条件的元素计数
在本文中,我们将看到如何从Python列表中获取一些选定的元素。因此,我们需要设计一些条件,并且仅应选择满足该条件的元素并打印其计数。
求和
在这种方法中,我们有条件地选择元素并使用一些元素来获取它们的数量。如果元素存在,则使用1;否则,条件条件的结果使用0。
示例
Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']# Given list
print("Given list:\n", Alist)
cnt = sum(1 for i in Alist if i in('Mon','Wed'))
print("Number of times the condition is satisfied in the list:\n",cnt)
输出结果
运行上面的代码给我们以下结果-
Given list:['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3
有映射和lambda
这里也可以使用条件,但也可以使用lambda和map函数。最后,我们应用求和函数来获取计数。
示例
Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']# Given list
print("Given list:\n", Alist)
cnt=sum(map(lambda i: i in('Mon','Wed'), Alist))
print("Number of times the condition is satisfied in the list:\n",cnt)
输出结果
运行上面的代码给我们以下结果-
Given list:['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3
与减少
reduce函数将特定函数应用于作为参数提供给它的列表中的所有元素。我们将其与in条件一起使用,最终生成与该条件匹配的元素计数。
示例
from functools import reduceAlist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
# Given list
print("Given list:\n", Alist)
cnt = reduce(lambda count, i: count + (i in('Mon','Wed')), Alist, 0)
print("Number of times the condition is satisfied in the list:\n",cnt)
输出结果
运行上面的代码给我们以下结果-
Given list:['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3
以上是 符合Python中特定条件的元素计数 的全部内容, 来源链接: utcz.com/z/343319.html