如何检查python中的列表是否是另一个列表的一部分并保留顺序。例子:a = [3, 4, 1, 2, 5]b = [4, 1, 2]Answer is Truea = [3, 4, 1, 0, 2, 5]b = [4, 1, 2]Answer is False as the order is not matched
2 回答

POPMUISE
TA贡献1765条经验 获得超5个赞
这可以使用 python 列表相等来解决,比较所有位置的子列表:
is_b_sublist_of_a = any(b == a[i:i+len(b)] for i in range(len(a)))
该表达式从第th 位置开始a[i:i+len(b)]
创建一个长度为 的列表。该表达式是针对 中的所有位置计算的。如果任何比较返回,则表达式也将返回,否则。b
i
a
True
any
True
False

手掌心
TA贡献1942条经验 获得超3个赞
使用这个功能:
def is_a_in_x(A, X):
for i in range(len(X) - len(A) + 1):
if A == X[i:i+len(A)]: return True
return False
添加回答
举报
0/150
提交
取消