我想编写一个函数来确定子列表是否存在于较大的列表中。
list1 = [1,0,1,1,1,0,0]
list2 = [1,0,1,0,1,0,1]
#Should return true
sublistExists(list1, [1,1,1])
#Should return false
sublistExists(list2, [1,1,1])
有没有Python函数可以做到这一点?
让我们变得实用一点,好吗? :)
def contains_sublist(lst, sublst):
n = len(sublst)
return any((sublst == lst[i:i+n]) for i in range(len(lst)-n+1))
注意any()
将在 lst 中 sublst 的第一个匹配处停止 - 或者如果在 O(m*n) 次操作后没有匹配则失败
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)