猿问

检查一个列表是否是另一个列表的一部分,同时保留列表序列

如何检查python中的列表是否是另一个列表的一部分并保留顺序。例子:


a = [3, 4, 1, 2, 5]

b = [4, 1, 2]

Answer is True


a = [3, 4, 1, 0, 2, 5]

b = [4, 1, 2]

Answer is False as the order is not matched


紫衣仙女
浏览 144回答 2
2回答

POPMUISE

这可以使用 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)]创建一个长度为 的列表。该表达式是针对 中的所有位置计算的。如果任何比较返回,则表达式也将返回,否则。biaTrueanyTrueFalse

手掌心

使用这个功能: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
随时随地看视频慕课网APP

相关分类

Python
我要回答