所以说我的代码如下:
Numbers = [1, 2, 3, 4]
Print(Numbers.count(1,2))
我如何使输出返回2?
答案 0 :(得分:3)
sum(map(Numbers.count, (1,2)))
一旦要计数的元素数量增加,最好使用collections.Counter
并从此处添加计数:
from collections import Counter
c = Counter(Numbers)
sum(c[x] for x in (1,2))
后一种方法的主要优点是Counter
在一次迭代中获得所有计数,而重复的list.count
调用则反复迭代列表。
答案 1 :(得分:3)
重复使用class Main {
public static void main(String[] args) {
Things apple = new Things("apple", 1);
Things dog = new Things("dog", 2);
}
}
将具有复杂度O(m * n)。不建议这样做。您可以使用list.count
完成复杂度为O(m + n)的任务:
collections.Counter
要满足潜在的缺失值,可以使用L = [1, 2, 3, 4]
from collections import Counter
c = Counter(L)
res = sum(map(c.get, [1, 2])) # 2
:
dict.__getitem__
答案 2 :(得分:0)
count
对象的list
方法仅接受1个参数。实现您所寻找的最简单的方法是使用简单的加法:
Numbers = [1, 2, 3, 4]
print(Numbers.count(1) + Numbers.count(2))
# outputs 2