-2

我有一个清单,比如说[1, 5, 2, 6, 2, 5, 1]
此列表中的项目在此列表中的顺序相同:[4, 1, 5, 2, 6, 2, 5, 1, 6, 2, 3]

找出一个嵌套列表的项目是否在另一个嵌套列表的项目中的顺序相同的简单方法是什么?

4

3 回答 3

4

看了这个问题后,我写了这个。与其他一些假设第一个数组中的元素必须连续出现在第二个数组中的其他人不同,这不是。

def in_order(a,b):
    j = iter(b)
    for i in a:
        while True:
            try:
                j_ = j.next()
            except StopIteration:
                return False
            if i == j_:
                break
    return True

OP的例子:

a = [1, 5, 2, 6, 2, 5, 1]
b = [4, 1, 5, 2, 6, 2, 5, 1, 6, 2, 3]
print in_order(a,b)

印刷:True

于 2012-06-25T16:02:04.920 回答
0
size = len(needle)
any(needle == haystack[i:i+size] for i in range(len(haystack) - size + 1))
于 2012-06-25T16:51:13.917 回答
-1

只需从此处修改最佳答案:Testing if a list contains another list with Python

于 2012-06-25T15:54:37.550 回答