如果您需要多个匹配项,则可以这样做:
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 resultsprint find_sub_list(['my','name','is'], greeting) # [(1, 3), (8, 10)]
或者,如果您只想第一场比赛:
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 for i,e in enumerate(l) if e==sl[0]): if l[ind:ind+sll]==sl: return ind,ind+sll-1print find_sub_list(['my','name','is'], greeting) # (1, 3)



