python中计算一个列表中连续相同的元素个数方法


Posted in Python onJune 29, 2018

最简单的例子:

a = [1,1,1,1,2,2,2,3,3,1,1,1,3]
# 问:计算a中最多有几个连续的1

很明显,答案是4

如果用代码实现,最先想到的就是itertools:

import itertools
a = [1,1,1,1,2,2,2,3,3,1,1,1,3]
print max([len(list(v)) for k,v in itertools.groupby(a)])

但是如果不想用itertools呢?

可以尝试以下的办法,效率还比itertools高一个数量级!

import random
import time
import itertools

random.seed(0)
a = ['1' if random.random()>0.4 else ' ' for i in range(1000000)]

t = time.time()
print max([len(x) for x in ''.join(a).split()])
print time.time()-t

t = time.time()
print max([len(list(v)) for k,v in itertools.groupby(a)])
print time.time()-t

#####
# 27
# 0.050999879837
# 27
# 0.450000047684

以上这篇python中计算一个列表中连续相同的元素个数方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django中URLconf和include()的协同工作方法
Jul 20 Python
python脚本监控docker容器
Apr 27 Python
Python的socket模块源码中的一些实现要点分析
Jun 06 Python
Python首次安装后运行报错(0xc000007b)的解决方法
Oct 18 Python
python 爬虫出现403禁止访问错误详解
Mar 11 Python
解决python3中解压zip文件是文件名乱码的问题
Mar 22 Python
基于python的多进程共享变量正确打开方式
Apr 28 Python
利用Python实现手机短信监控通知的方法
Jul 22 Python
pycharm创建scrapy项目教程及遇到的坑解析
Aug 15 Python
在python shell中运行python文件的实现
Dec 21 Python
python实现在线翻译
Jun 18 Python
浅谈Python实现opencv之图片色素的数值运算和逻辑运算
Jun 23 Python
Python使用ConfigParser模块操作配置文件的方法
Jun 29 #Python
python计算列表内各元素的个数实例
Jun 29 #Python
python判断设备是否联网的方法
Jun 29 #Python
python3 对list中每个元素进行处理的方法
Jun 29 #Python
python对list中的每个元素进行某种操作的方法
Jun 29 #Python
Python中交换两个元素的实现方法
Jun 29 #Python
python3中zip()函数使用详解
Jun 29 #Python
You might like
一个目录遍历函数
2006/10/09 PHP
PHP中Session引起的脚本阻塞问题解决办法
2014/04/08 PHP
深入探究PHP的多进程编程方法
2015/08/18 PHP
使用Huagepage和PGO来提升PHP7的执行性能
2015/11/30 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
IE 下Enter提交表单存在重复提交问题的解决方法
2014/05/04 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
使用PHP+JavaScript将HTML页面转换为图片的实例分享
2016/04/18 Javascript
jquery实现(textarea)placeholder自动换行
2016/12/22 Javascript
JS实现给对象动态添加属性的方法
2017/01/05 Javascript
常用jQuery选择器汇总
2017/02/02 Javascript
简单谈谈关于 npm 5.0 的新坑
2017/06/08 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
Angular 容器部署的方法
2018/04/17 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
微信JS-SDK实现微信会员卡功能(给用户微信卡包里发送会员卡)
2019/07/25 Javascript
Python导出DBF文件到Excel的方法
2015/07/25 Python
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
2017/09/08 Python
python实现多层感知器MLP(基于双月数据集)
2019/01/18 Python
Python生成指定数量的优惠码实操内容
2019/06/18 Python
简单了解python中的f.b.u.r函数
2019/11/02 Python
Python+PyQt5实现灭霸响指功能
2020/05/25 Python
Python基于locals返回作用域字典
2020/10/17 Python
python实现录音功能(可随时停止录音)
2020/10/26 Python
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
罗德与泰勒百货官网:Lord & Taylor
2016/08/12 全球购物
新加坡最受追捧的体验平台:Hapz
2018/01/01 全球购物
美国家庭鞋店:Shoe Sensation
2019/09/27 全球购物
计算机专业个人简短的自我评价
2013/10/23 职场文书
幼儿园保育员辞职信
2014/01/12 职场文书
艺术学院毕业生自我评价
2014/03/02 职场文书
优秀党员事迹材料
2014/12/18 职场文书
ant design charts 获取后端接口数据展示
2022/05/25 Javascript