Python:在列表中查找子列表,并打印列表中的下一个元素
Python: Find a sublist in a list, and print the next element in the list
我有两个这样的列表
#Main List
0 1 2 3 4 5 6 7 8 9 10 11
['blue', 'crash', 'pink', 'pink', 'gold', 'blue', 'blue', 'crash', 'pink', 'pink', 'gold', 'blue']
#Sublist
['crash', 'pink', 'pink', 'gold']
我希望在主列表中找到子列表(如果存在的话)。如果找到,我希望打印列表中下一个出现的元素。
例如,对于上面的两个列表,我希望将其作为输出:
'blue'
'blue'
第一个 'blue' 来自列表的第 5 个元素,它位于第一次出现的子列表 (L[0:4]) 之后。第二个'blue'来自主列表的第11个元素,也位于List中子串第二次出现后
您可以遍历列表,查找子列表并打印下一个元素(如果找到):
List = ['blue', 'crash', 'pink', 'pink', 'gold', 'blue', 'blue', 'crash', 'pink', 'pink', 'gold', 'blue']
Sublist = ['crash', 'pink', 'pink', 'gold']
for i in range(len(List)-len(Sublist)): #Loop over the List
if List[i:i+len(Sublist)] == Sublist: #If we find the sublist in the List
print(List[i+len(Sublist)]) #we print it
我有两个这样的列表
#Main List
0 1 2 3 4 5 6 7 8 9 10 11
['blue', 'crash', 'pink', 'pink', 'gold', 'blue', 'blue', 'crash', 'pink', 'pink', 'gold', 'blue']
#Sublist
['crash', 'pink', 'pink', 'gold']
我希望在主列表中找到子列表(如果存在的话)。如果找到,我希望打印列表中下一个出现的元素。
例如,对于上面的两个列表,我希望将其作为输出:
'blue'
'blue'
第一个 'blue' 来自列表的第 5 个元素,它位于第一次出现的子列表 (L[0:4]) 之后。第二个'blue'来自主列表的第11个元素,也位于List中子串第二次出现后
您可以遍历列表,查找子列表并打印下一个元素(如果找到):
List = ['blue', 'crash', 'pink', 'pink', 'gold', 'blue', 'blue', 'crash', 'pink', 'pink', 'gold', 'blue']
Sublist = ['crash', 'pink', 'pink', 'gold']
for i in range(len(List)-len(Sublist)): #Loop over the List
if List[i:i+len(Sublist)] == Sublist: #If we find the sublist in the List
print(List[i+len(Sublist)]) #we print it