gpt4 book ai didi

python - 检查字符串列表是否包含字符串序列

转载 作者:行者123 更新时间:2023-11-30 23:20:15 25 4
gpt4 key购买 nike

Python 中是否有一个方法可以检查这一点,并且它必须采用相同的顺序。

a = ['a', 'b', 'c']
b = ['b', 'c']

if a contains b:
c = remove b from a

c = ['a']

如果 b = ['c', 'b']c 应等于 a, c = ['a', 'b', 'c']

非常感谢您提前提供的帮助!

最佳答案

我会分两步解决这个问题:

  1. 查找子列表的索引。

  2. 根据列表中的索引删除子列表。

要查找子列表的索引,您可以执行以下操作:

def index(l, s):
len_s = len(s)
for pos in range(len(l) - len_s + 1):
if l[pos:pos + len_s] == s:
return pos
return -1

它的效率不如 Boyer-Moore但现在它会起作用。获得索引后,您可以简单地删除该切片。所以你的代码变成:

a = ['a', 'b', 'c']
b = ['b', 'c']

pos = index(a, b)
if pos >= 0:
c = list(a)
del c[pos:pos + len(b)]

# c = ['a']

关于python - 检查字符串列表是否包含字符串序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25611138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com