Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何找到列表中特定数字序列的起始位置?_Python_Algorithm_Python 3.x_List_Sequences - Fatal编程技术网

Python 如何找到列表中特定数字序列的起始位置?

Python 如何找到列表中特定数字序列的起始位置?,python,algorithm,python-3.x,list,sequences,Python,Algorithm,Python 3.x,List,Sequences,我找不到这个问题的答案,我是一个新手程序员,很抱歉这个愚蠢的问题 比如说,在python中,我想找到序列[69,69]第一次出现在列表中时的位置[34,34,34,50,39,69,69,54]。这个有列表符号吗?我觉得有,但我一直没能找到。我不想做函数,我想学习list/for方法 因此,如果a=[34,34,34,50,39,69,69,54]我如何找到[69,69]的起点?(作为一般性陈述)如果我假设[69,69]实际上是a?您可能希望a的宽度为2,然后检查它是否等于您的目标列表如果您不关

我找不到这个问题的答案,我是一个新手程序员,很抱歉这个愚蠢的问题

比如说,在python中,我想找到序列[69,69]第一次出现在列表中时的位置
[34,34,34,50,39,69,69,54]
。这个有列表符号吗?我觉得有,但我一直没能找到。我不想做函数,我想学习list/for方法


因此,如果
a=[34,34,34,50,39,69,69,54]
我如何找到
[69,69]
的起点?(作为一般性陈述)如果我假设
[69,69]
实际上是
a

您可能希望a的宽度为2,然后检查它是否等于您的目标列表如果您不关心性能:
int(,”。join(map(str[34,34,34,50,39,69,69,54])。index(“69,69”)/3)
如果你只需要处理0-255范围内的数字,这里有一个可爱的快捷方式,应该非常快:
bytes(L).index(bytes(s))
不要相信这是一个与现有问题完全相同的问题-这个问题比建议的问题简单。下面是我的解决方案:
列表(zip(x,x[1:]).index((69,69))
。如果a是
[69,69]
,那么这将起作用:
列表(zip(x,x[1:])。索引(tuple(a))
通过解释我上面的答案:解决方案将列表与减去第一个元素的相同列表一起压缩。这将生成一个包含(i和i+1)位置的成对列表。将其转换为一个列表,然后搜索有问题的一对
(69,69)
我不相信这能回答OP的问题。OP询问如何找到69,69序列的起始位置。
[x for x in enumerate(a) if x[1] == 69]