【python】获取列表中最长连续数字
最近开发遇到一个功能需求,目的是要获取一个AI分析结果中最长连续帧,比如一个视频中连续3帧有人,那么我认为这个视频就是有人,我就要判断这个视频帧列表中是否有连续的三帧有人。本质就是获取列表中的最长连续数字,比如有一个列表 a = [1,2,3,4,1,2,3],要获取这个列表中最长连续数字,应该是[1,2,3,4]。
拓展,比如我想获取每隔n的最长连续数字怎么办?例如:b = [1,3,5,7,9,1,4,7,10],我想获取每隔2的最长连续数字,应该是[1,3,5,7,9],我想获取每隔3的最长连续数字,应该是[1,4,7,10]
下面是具体的代码实现
#!/usr/bin/env python # -*- coding:utf-8 -*- def get_skip_frame(skip, frame_list):tmp_list = []return_list = []for i in range(len(frame_list)):if len(tmp_list) == 0:tmp_list.append(frame_list[i])else:change = abs(frame_list[i] - tmp_list[-1])if change == skip:tmp_list.append(frame_list[i])else:if len(return_list) < len(tmp_list):return_list = tmp_listtmp_list = []tmp_list.append(frame_list[i])if len(return_list) < len(tmp_list):return_list = tmp_listreturn return_list
response1 = get_skip_frame(1, [1,2,3,1,2,3,4,1,3,5,7,9,1,4,7,10])response2 = get_skip_frame(2, [1,2,3,1,2,3,4,1,3,5,7,9,1,4,7,10])response3 = get_skip_frame(3, [1,2,3,1,2,3,4,1,3,5,7,9,1,4,7,10])print response1print response2print response3
[1, 2, 3, 4]
[1, 3, 5, 7, 9]
[1, 4, 7, 10]
可以看出结果是我们想要的顺序。
转载于:https://www.cnblogs.com/zhenglisai/p/10307190.html
【python】获取列表中最长连续数字相关推荐
- python 将列表中的字符串转为数字_python 将列表中的字符串转为数字
本文实例讲述了python中列表元素转为数字的方法.分享给大家供大家参考,具体如下: 有一个数字字符的列表: numbers = ['1', '5', '10', '8'] 想要把每个元素转换为数字: ...
- python获取列表中最大N个数及其索引
python获取列表中最大N个数及其索引 写作目的 步骤 结果展示 写作目的 主要是看到别人的基本都是利用hepap排序,感觉还挺麻烦的 步骤 import pandas a=[5,2,6,7,9] ...
- python 获取列表中多个元素-切片操作
# -*-coding:utf-8 -*- # @Time : 20:48 # @Author: 黄荣津 # @File : 4.获取列表中多个元素-切片操作.py # @Software: PyCh ...
- python获取列表中元素的索引
python中,列表一般是没有索引,不能像pandas里面的序列和dataframe一样,方便的使用索引.但是如果想知道某一个元素在列表中的位置,就需要使用index比如 想要知道一个列表中,哪一个元 ...
- python获取列表中指定元素的下标
python中列表元素虽然有下标,但是有时候需要特定的用途,查找指定的特殊值的元素的下标. 这时候可以用for循环,打印出来下标,但是每次都要写for循环,感觉还是有点麻烦. 比如这样 使用enume ...
- python获取列表中某个元素个数_如何获取列表中的元素数?
How to get the size of a list? 要查找列表的大小,请使用内置函数len:items = [] items.append("apple") items. ...
- python 列表中的数字转字符串_python 将列表中的字符串转为数字
python 将列表中的字符串转为数字 转自:https://www.jb51.net/article/86561.htm 本文实例讲述了Python中列表元素转为数字的方法.分享给大家供大家参考,具 ...
- python统计列表中元素个数_python中计算一个列表中连续相同的元素个数方法
python中计算一个列表中连续相同的元素个数方法 最简单的例子: a = [1,1,1,1,2,2,2,3,3,1,1,1,3] # 问:计算a中最多有几个连续的1 很明显,答案是4 如果用代码实现 ...
- Python实例 -- 如何快速获取列表中最大的三个元素
如何快速获取列表中最大的三个元素 最近在做实验,期间需要在一个列表中获取最大的三个元素,自己写的方法复杂度太高,放上大牛的方法,复杂度很低.多看几遍,才能体会到大概的精髓.这道题也是Python的面试 ...
最新文章
- linux下普通用户如何使用80端口启动程序
- 杀死初创科技公司的四大工程陷阱
- 三位数除以两位数怎么算竖式_青岛版三年级上册数学5.6三位数除以一位数(最高位商后有余数)微课知识点精讲+练习...
- python学习-10 运算符1
- DataReader对象的基本使用 c#
- 基于贪心算法求解TSP问题(JAVA)
- python往redis导数_Python:教你一招,将500W+的数据快速写入redis(文内赋赠教程)...
- Java写播放器好写吗_java写mp3播放器
- akka mysql_初试超轻量级actor框架——akka
- 网页中加载flash的方法
- matlab r2008a下载,Matlab+R2008a下载地址及安装教程
- 北大AI讲座公开课-精华
- Java 程序员 金三银四面试必备:高速突击学习框架 + 性能优化
- liferay6.2 使用默认方式实现可配置的portlet
- 陈艾盐:春燕百集访谈节目第二十一集
- find、文件后缀及linux与Windows互传
- IBMX3250取消raid模式,直接装系统
- 大数据之hive:hive分桶表
- P1233 木棍加工
- JS实现最美的3D宇宙效果
热门文章
- 《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇:简介及目录》(附上完整工程文件)...
- 《我的青春谁做主》我想要的结局
- 抗炎饮食与混合坚果粉
- 肺癌图片识别的相关信息
- 百度网盘Linux客户端不停缓冲打不开
- python:else与循环语句联合用法
- 机器学习(三十)——Model-Free Control
- Java---报错The type List is not generic; it cannot be parameterized with arguments <Role>==List打包错误
- 自定义队列(优化了数组固定长度的弊端)以及集合中的一些重点内容
- #17# SCCM管理 - 软件中心 VS 应用程序目录网站点