在 python 的列表中查找子列表的位置
Find the position of sublist in a list in python
例如,我在 Python 中有两个列表 x 和 y。假设x = [0,1,2,3,4,5,6,7]
和y = [3,4,5]
,显然y是x的子列表,子列表y在x中的位置是3
。换句话说,我试图获得一个函数来判断一个列表是否是另一个列表中的子列表。如果是这样,我也想弄清楚子列表的位置。
不知道有没有现成的功能可以用。如果没有,有没有人知道我如何使用一些有效的方法来实现它。
提前感谢您的帮助!
x = [0,1,2,3,4,5,6,7]
y = [3,4,5]
occ = [i for i, a in enumerate(x) if a == y[0]]
for b in occ:
if x[b:b+len(y)] == y:
print 'YES-- SUBLIST at : ', b
break
if len(occ)-1 == occ.index(b):
print 'NO SUBLIST'
break
例如,我在 Python 中有两个列表 x 和 y。假设x = [0,1,2,3,4,5,6,7]
和y = [3,4,5]
,显然y是x的子列表,子列表y在x中的位置是3
。换句话说,我试图获得一个函数来判断一个列表是否是另一个列表中的子列表。如果是这样,我也想弄清楚子列表的位置。
不知道有没有现成的功能可以用。如果没有,有没有人知道我如何使用一些有效的方法来实现它。
提前感谢您的帮助!
x = [0,1,2,3,4,5,6,7]
y = [3,4,5]
occ = [i for i, a in enumerate(x) if a == y[0]]
for b in occ:
if x[b:b+len(y)] == y:
print 'YES-- SUBLIST at : ', b
break
if len(occ)-1 == occ.index(b):
print 'NO SUBLIST'
break