gpt4 book ai didi

list - Python:在另一个列表的成员中查找一个列表(按顺序)

转载 作者:IT老高 更新时间:2023-10-28 21:09:24 28 4
gpt4 key购买 nike

如果我有这个:

a='abcdefghij'
b='de'

那么这会在 a 中找到 b:

b in a => True

有没有办法用列表做类似的事情?像这样:

a=list('abcdefghij')
b=list('de')

b in a => False

'False' 结果是可以理解的——因为它正确地寻找一个元素 'de',而不是(我碰巧想要它做的)'d' 后跟 'e'

这是可行的,我知道:

a=['a', 'b', 'c', ['d', 'e'], 'f', 'g', 'h']
b=list('de')
b in a => True

我可以处理数据以获得我想要的 - 但是有没有一种简短的 Pythonic 方法可以做到这一点?

澄清一下:我需要在这里保留顺序(b=['e','d'],应该返回 False)。

如果有帮助,我所拥有的是列表列表:这些列表表示有向图中从节点 1 到节点 x 的所有可能路径(访问节点列表):我想“分解”任何较长路径中的公共(public)路径。 (因此寻找构成所有较长路径的所有不可约的“原子”路径)。

相关

最佳答案

我怀疑有更多的pythonic方法可以做到这一点,但至少它可以完成工作:

l=list('abcdefgh')
pat=list('de')

print pat in l # Returns False
print any(l[i:i+len(pat)]==pat for i in xrange(len(l)-len(pat)+1))

关于list - Python:在另一个列表的成员中查找一个列表(按顺序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2250633/

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