Как найти несколько последовательных значений в списке и получить их индексы?
К примеру у меня есть два списка:
list1 = ['Walking', '20', 'streets', 'uptown', 'or', 'downtown', 'in', 'Midtown', 'generally', 'covers', 'a', 'distance', 'of', 'approximately', 'one', 'mile', '.']
list2 = ['20','streets','uptown']
В list1 содержится предложение, в list2 несколько последовательно идущих частей предложения, индексы которых я хотел бы найти в list1. Как я могу это сделать?
for i in range(len(L)):
if D[0] == L[i]:
d,j = 1,1
mas = []
mas.append(True)
ind = []
ind.append(i)
while d < len(D):
if D[d] == L[i + j]:
mas.append(True)
ind.append(i+j)
d += 1
j += 1
else:
mas.append(False)
if False not in mas:
break
Написал такой код, как его можно улучшить?
Ответы (1 шт):
Автор решения: Эникейщик
→ Ссылка
Искать в list1 элемент list2[0], как нашлось проверить следующие два. Если совпало - вывести индексы.