在lis中计算子列表

2024-06-16 11:16:49 发布

您现在位置:Python中文网/ 问答频道 /正文

L=[2,4,5,6,2,1,6,6,3,2,4,5,3,4,5]

我想知道一个任意子序列出现了多少次,s=[2,4,5]会返回2次。在

我尝试了L.count(s),但它不起作用,因为我认为它希望查找类似[random numbers ... [2,4,5] ... random numbers]的内容,而不是不带括号的{}。在


Tags: 内容count序列random括号numbers任意子
2条回答
x=0
for i in range(len(L)):
    if L[i:i+len(s)]==s:
        x+=1

或者列出理解:

^{2}$
>>> L = [2,4,5,6,2,1,6,6,3,2,4,5,3,4,5]
>>> s = [2,4,5]
^{2}$

几乎一样,稍微短一点(使用True的行为类似于数字1):

>>> sum(L[i:i+len(s)]==s for i in range(len(L)))
2

相关问题 更多 >