计算2D数组中空数组出现的次数

时间:2018-10-05 15:14:54

标签: python python-3.x

我希望以最有效的方式计算2D数组中空数组的出现次数。例如:

array = [[a,b],[a,b,c],[a],[],[],[],[]]

我想得到的答案应该是4

在不使用冗长的for循环过程的情况下如何解决呢?它也不应使用Numpy,而应使用简单的Python。我尝试使用.count,但是我不能完全使用空数组。

4 个答案:

答案 0 :(得分:2)

这是我使用list.count()方法的简短解决方案:

array = [[a,b],[a,b,c],[a],[],[],[],[]]

print(array.count([])) # 4

答案 1 :(得分:1)

array = [[a,b],[a,b,c],[a],[],[],[],[]]
answer = len([a for a in array if not a])

>>> answer
4

答案 2 :(得分:0)

array = [[1,2],[1,2,3],[1],[],[],[],[]]

print(sum(1 for arr in array if not arr)) # 4

答案 3 :(得分:0)

我会使用array.count([])方法,而只是引入一个未显示的选项

print(len(list(filter(lambda x: x == [], array))))
# 4