Find starting and ending indices of sublist in list

If you want multiple matches, this works: greeting = [‘hello’,’my’,’name’,’is’,’bob’,’how’,’are’,’you’,’my’,’name’,’is’] def find_sub_list(sl,l): results=[] sll=len(sl) for ind in (i for i,e in enumerate(l) if e==sl[0]): if l[ind:ind+sll]==sl: results.append((ind,ind+sll-1)) return results print find_sub_list([‘my’,’name’,’is’], greeting) # [(1, 3), (8, 10)] Or if you just want the first match: greeting = [‘hello’,’my’,’name’,’is’,’bob’,’how’,’are’,’you’,’my’,’name’,’is’] def find_sub_list(sl,l): sll=len(sl) for ind in (i … Read more