Python 检查两个列表中的连续数字
伪代码:Python 检查两个列表中的连续数字,python,Python,伪代码: A = [1,2,3,4,5,6,7,8,9] B = [4,5,6,7,1,2,6,7,8] count = 0 for i in range(len(A)): for j in range(len(B)): if A[i:i+3] == B[j:j+3]: #check 3 consecutive numbers if are equal count += 1 print x[i:i+3] print co
A = [1,2,3,4,5,6,7,8,9]
B = [4,5,6,7,1,2,6,7,8]
count = 0
for i in range(len(A)):
for j in range(len(B)):
if A[i:i+3] == B[j:j+3]: #check 3 consecutive numbers if are equal
count += 1
print x[i:i+3]
print count
问题:如果
A[4,5,6]==B[4,5,6]
,然后跳到A[6,7,8]==B[6,7,8]
,而不是A[5,6,7]==B[5,6,7],我该如何实现
A = [1,2,3,4,5,6,7,8,9]
B = [4,5,6,7,1,2,6,7,8]
count = 0
skip = False #this is a flag variable
for i in range(len(A)):
for j in range(len(B)):
if skip:
skip = False
continue
if A[i:i+3] == B[j:j+3]: #check 3 consecutive numbers if are equal
count += 1
print x[i:i+3]
skip = True
print count
从解释你想要什么开始。我一点也不明白只要检查它是否是6,7,8
,不要print
或incrementcount
?你为什么不想要[5,6,7]?你知道用这种方法也可以得到小于3的子列表吗?切片长度不是固定的。但它只跳过一个,如果两个列表中都有类似1,2,3,4,5的序列会怎么样?另外,x
仍未定义。