在使用列表进行数据分析的过程中,很多时候我们遇到一种情况,即需要确定给定元素在给定列表中是否存在至少N次。例如,如果5在列表中至少存在3次,则不存在。在本文中,我们将介绍两种实现方法。
在以下方法中,我们将数字及其出现次数作为输入。然后,我们的设计师将跟踪发生的次数。如果计数值大于或等于所需值,则将结果打印为true或false。
listA = [1, 3, 5, 5, 4, 5] # 给定列表 print("给定列表: ",listA) # element ot be checked elem = 5 # Number of occurences N = 3 res = 0 for e in listA: if e == elem: res = res + 1 if res >= N: res = True else: res = False # printing result print("Does %d occur atleast %d times ? :" % (elem, N),res)
运行上面的代码给我们以下结果-
输出结果
给定列表: [1, 3, 5, 5, 4, 5] Does 5 occur atleast 3 times ? : True
在这种方法中,我们创建了一个新列表,其中包含原始列表中的给定编号。此新列表将所有出现的给定数字标记为true。然后,我们设计一个islice方法,该方法将计算新列表中是否存在所需数量的True值。因此,所需值的数量为Mark的true或false。
from itertools import islice listA = [2, 11, 9,2, 4, 2] # 给定列表 print("给定列表: ",listA) # element to be checked elem = 2 # 出现次数 N = 3 elem_list = [] # Create for i in listA: if i == elem: elem_list.append(True) res = next(islice(elem_list, N-1, None), False) # printing result print("Does %d occur atleast %d times ? :" % (elem, N),res)
运行上面的代码给我们以下结果-
输出结果
给定列表: [2, 11, 9, 2, 4, 2] Does 2 occur atleast 3 times ? : True