# Count the number of occurences of a pattern in a list in Python

• A+
Category：Languages

Given a pattern `[1,1,0,1,1]`, and a binary list of length 100, `[0,1,1,0,0,...,0,1]`. I want to count the number of occurences of this pattern in this list. Is there a simple way to do this without the need to track the each item at every index with a variable?

Note something like this, `[...,1, 1, 0, 1, 1, 1, 1, 0, 1, 1,...,0]` can occur but this should be counted as 2 occurrences.

Convert your list to string using join. Then do:

``text.count(pattern) ``

If you need to count overlapping matches then you will have to use regex matching or define your own function.

Edit Here is the full code:

``def overlapping_occurences(string, sub):     count = start = 0     while True:         start = string.find(sub, start) + 1         if start > 0:             count+=1         else:             return count  given_list = [1, 1, 0, 1, 1, 1, 1, 0, 1, 1] pattern = [1,1,0,1,1]  text = ''.join(str(x) for x in given_list) print(text) pattern = ''.join(str(x) for x in pattern) print(pattern) print(text.count(pattern)) #for no overlapping print(overlapping_occurences(text, pattern)) ``