If I have 2 lists, for an example:
list_1 = ['a', 'A']
list_2 = ['a', 'A', 'A', 'b', 'b', 'b', 'b']
How can I make a count to see how many times the items from list_1 appear in list_2?
So in this case it should return 3.
If I have 2 lists, for an example:
list_1 = ['a', 'A']
list_2 = ['a', 'A', 'A', 'b', 'b', 'b', 'b']
How can I make a count to see how many times the items from list_1 appear in list_2?
So in this case it should return 3.
 
    
    list_1 = ['a', 'A']
list_2 = ['a', 'A', 'A', 'b', 'b', 'b', 'b']
found = 0
for x in list_1:
    for y in list_2:
        if x == y:
            found += 1
print(found)
 
    
    An efficient O(n) method using a set as reference:
list_1 = ['a', 'A']
list_2 = ['a', 'A', 'A', 'b', 'b', 'b', 'b']
set_1 = set(list_1)
count = 0
for e in list_2:
    if e in set_1:
        counter += 1
Output: 3
 
    
    Another solution, which could be beneficial in other cases, because the Counter()- object returns a dictionary with the already summed up elements
from collections import Counter
list_1 = ['a', 'A']
list_2 = ['a', 'A', 'A', 'b', 'b', 'b', 'b']
c = Counter(list_2)
print(sum([c[x] for x in list_1]))
 
    
    Just use count for lists:
print(list_2.count(list_1[0]) + list_2.count(list_1[1]))
or in a loop:
sum_ = 0
for i in range(len(list_1)):
    sum_ += list_2.count(list_1[i])
print(sum_)
