Python判断值是否在list或set中的性能对比分析


Posted in Python onApril 16, 2016

本文实例对比分析了Python判断值是否在list或set中的执行性能。分享给大家供大家参考,具体如下:

判断值是否在set集合中的速度明显要比list快的多, 因为查找set用到了hash,时间在O(1)级别。

假设listA有100w个元素,setA=set(listA)即setA为listA转换之后的集合。
以下做个简单的对比:

for i in xrange(0, 5000000):
  if i in listA:
     pass
for i in xrange(0, 5000000):
  if i in setA:
     pass

第一个循环用了16min,第二个循环用了52s。 由此可见,在set中判断是否存在某值的效率要高的多。

况且,从list转为set,并不会花什么时间。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python使用rabbitmq实现网络爬虫示例
Feb 20 Python
深入讲解Python中的迭代器和生成器
Oct 26 Python
CentOS安装pillow报错的解决方法
Jan 27 Python
python 创建弹出式菜单的实现代码
Jul 11 Python
单利模式及python实现方式详解
Mar 20 Python
python游戏开发之视频转彩色字符动画
Apr 26 Python
python cv2在验证码识别中应用实例解析
Dec 25 Python
Python第三方包之DingDingBot钉钉机器人
Apr 09 Python
解决Python spyder显示不全df列和行的问题
Apr 20 Python
python 制作磁力搜索工具
Mar 04 Python
Python快速优雅的批量修改Word文档样式
May 20 Python
Python线程池与GIL全局锁实现抽奖小案例
Apr 13 Python
python中zip()方法应用实例分析
Apr 16 #Python
Python使用logging结合decorator模式实现优化日志输出的方法
Apr 16 #Python
Python使用redis pool的一种单例实现方式
Apr 16 #Python
说一说Python logging
Apr 15 #Python
Python Web框架Tornado运行和部署
Oct 19 #Python
Python爬虫爬验证码实现功能详解
Apr 14 #Python
Python实现简单登录验证
Apr 13 #Python
You might like
用php的ob_start来生成静态页面的方法分析
2011/03/09 PHP
php IP转换整形(ip2long)的详解
2013/06/06 PHP
Dwz与thinkphp整合下的数据导出到Excel实例
2014/12/04 PHP
使用图灵api创建微信聊天机器人
2015/07/23 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
php校验公钥是否可用的实例方法
2019/09/17 PHP
PHP变量的作用范围实例讲解
2020/12/22 PHP
js 数值项目的格式化函数代码
2010/05/14 Javascript
javascript中取前n天日期的两种方法分享
2014/01/26 Javascript
Express作者TJ告别Node.js奔向Go
2014/07/14 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
2016/08/11 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
微信小程序开发之大转盘 仿天猫超市抽奖实例
2016/12/08 Javascript
推荐15个最好用的JavaScript代码压缩工具
2019/02/13 Javascript
Swiper.js实现移动端元素左右滑动
2019/09/08 Javascript
vue.js的状态管理vuex中store的使用详解
2019/11/08 Javascript
vue请求数据的三种方式
2020/03/04 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
2020/12/04 Javascript
原生js实现自定义滚动条
2021/01/20 Javascript
Python面向对象之类和对象属性的增删改查操作示例
2018/12/14 Python
Python 调用 Outlook 发送邮件过程解析
2019/08/08 Python
Python&&GDAL实现NDVI的计算方式
2020/01/09 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
2020/02/18 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
捷科时代的软件测试笔试题
2015/11/09 面试题
新年联欢会主持词
2014/03/27 职场文书
怀念母亲教学反思
2014/04/28 职场文书
2014年销售人员工作总结
2014/11/27 职场文书
新学期开学寄语2016
2015/12/04 职场文书
2019学子的答谢词范本!
2019/07/05 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
MySQL创建定时任务
2022/01/22 MySQL