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 相关文章推荐
Python编程中的异常处理教程
Aug 21 Python
带你了解python装饰器
Jun 15 Python
python交互式图形编程实例(三)
Nov 17 Python
50行Python代码实现人脸检测功能
Jan 23 Python
Django 实现购物车功能的示例代码
Oct 08 Python
Django csrf 验证问题的实现
Oct 09 Python
Python运行不显示DOS窗口的解决方法
Oct 22 Python
python bmp转换为jpg 并删除原图的方法
Oct 25 Python
pyqt5之将textBrowser的内容写入txt文档的方法
Jun 21 Python
Django中的静态文件管理过程解析
Aug 01 Python
python写一个随机点名软件的实例
Nov 28 Python
Python标准库:内置函数max(iterable, *[, key, default])说明
Apr 25 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
欧美媒体选出10年前最流行的17部动画
2017/01/18 日漫
Windows 下的 PHP-PEAR 安装方法
2010/11/20 PHP
记录mysql性能查询过程的使用方法
2013/05/02 PHP
php分页函数示例代码分享
2014/02/24 PHP
浅谈php优化需要注意的地方
2014/11/27 PHP
javascript CSS画图之基础篇
2009/07/29 Javascript
js遍历、动态的添加数据的小例子
2013/06/22 Javascript
JavaScript中九种常用排序算法
2014/09/02 Javascript
JS+CSS实现表格高亮的方法
2015/08/05 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
jQuery验证插件validate使用详解
2016/05/11 Javascript
DOM 事件的深入浅出(一)
2016/12/05 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
详解Vue2.5+迁移至Typescript指南
2019/08/01 Javascript
开发Node CLI构建微信小程序脚手架的示例
2020/03/27 Javascript
使用Python实现下载网易云音乐的高清MV
2015/03/16 Python
使用Python中的线程进行网络编程的入门教程
2015/04/15 Python
Python 功能和特点(新手必学)
2015/12/30 Python
Python基于递归算法实现的走迷宫问题
2017/08/04 Python
python编程线性回归代码示例
2017/12/07 Python
Python实现决策树C4.5算法的示例
2018/05/30 Python
Python迭代器与生成器基本用法分析
2018/07/26 Python
python中正则表达式 re.findall 用法
2018/10/23 Python
浅谈Python3 numpy.ptp()最大值与最小值的差
2019/08/24 Python
在tensorflow中实现屏蔽输出的log信息
2020/02/04 Python
瑞典网上购买现代和复古家具:Reforma
2019/10/21 全球购物
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
如何防止同一个帐户被多人同时登录
2013/08/01 面试题
介绍一下Java中的static关键字
2012/05/12 面试题
自学考试自我鉴定范文
2013/09/26 职场文书
护士岗位求职应聘自荐书范文
2014/02/12 职场文书
永远跟党走演讲稿
2014/09/12 职场文书
用python实现监控视频人数统计
2021/05/21 Python
Sleuth+logback 设置traceid 及自定义信息方式
2021/07/26 Java/Android
python文件与路径操作神器 pathlib
2022/04/01 Python
java高级用法JNA强大的Memory和Pointer
2022/04/19 Java/Android