python中range()与xrange()用法分析


Posted in Python onSeptember 21, 2016

本文实例讲述了python中range()与xrange()用法。分享给大家供大家参考,具体如下:

据说range比xrange开销要大,原因是range会直接生成一个list对象,而xrange每次调用返回其中的一个值(参考:https://3water.com/article/50072.htm)。于是好奇做了个小小的测试,比较两个函数性能到底有多大差别。

(1)测试代码

#!/usr/bin/env python
from datetime import *
def test_range():
    c1=0
    t1 = datetime.now()
    for i in range(0,100000):
        c1 += 1
    print datetime.now()-t1
def test_xrange():
    c1=0
    t1 = datetime.now()
    for i in xrange(0,100000):
        c1 += 1
    print datetime.now()-t1
if __name__ == '__main__':
    test_range()
    test_xrange()

(2)运行结果

python中range()与xrange()用法分析

(3)小结

从上图的三次运行结果可以看出,range在相同计算量下用时比xrange多了70%左右。另外,在不同的计算量情况下,用时基本也维持在这个比例。因此,如果并不需要返回list对象的话,xrange会是个好选择。

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

Python 相关文章推荐
python 实现堆排序算法代码
Jun 05 Python
使用python解析xml成对应的html示例分享
Apr 02 Python
搞笑的程序猿:看看你是哪种Python程序员
Jun 12 Python
windows上安装Anaconda和python的教程详解
Mar 28 Python
python3 破解 geetest(极验)的滑块验证码功能
Feb 24 Python
对Python中的条件判断、循环以及循环的终止方法详解
Feb 08 Python
Python values()与itervalues()的用法详解
Nov 27 Python
Python中 Global和Nonlocal的用法详解
Jan 20 Python
pandas中ix的使用详细讲解
Mar 09 Python
python实现IOU计算案例
Apr 12 Python
python 使用三引号时容易犯的小错误
Oct 21 Python
python爬虫使用scrapy注意事项
Nov 23 Python
Python基于sftp及rsa密匙实现远程拷贝文件的方法
Sep 21 #Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
Sep 21 #Python
浅析Python中MySQLdb的事务处理功能
Sep 21 #Python
Python 爬虫学习笔记之多线程爬虫
Sep 21 #Python
Python 爬虫学习笔记之单线程爬虫
Sep 21 #Python
Python 爬虫学习笔记之正则表达式
Sep 21 #Python
Python简单实现安全开关文件的两种方式
Sep 19 #Python
You might like
PHP 处理图片的类实现代码
2009/10/23 PHP
在PHP中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
php 不使用js实现页面跳转
2014/02/11 PHP
JavaScript Event学习第八章 事件的顺序
2010/02/07 Javascript
40个新鲜出炉的jQuery 插件和免费教程[上]
2012/07/24 Javascript
javascript操作table(insertRow,deleteRow,insertCell,deleteCell方法详解)
2013/12/16 Javascript
解决js中window.open弹出的是上次的缓存页面问题
2013/12/29 Javascript
jquery解析XML字符串和XML文件的方法说明
2014/02/21 Javascript
DOM基础教程之事件对象
2015/01/20 Javascript
jQuery简单实现仿京东分类导航层效果
2016/06/07 Javascript
jQuery中页面返回顶部的方法总结
2016/12/30 Javascript
让你彻底掌握es6 Promise的八段代码
2017/07/26 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
js尾调用优化的实现
2019/05/23 Javascript
jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】
2020/05/19 jQuery
解决iview table组件里的 固定列 表格不自适应的问题
2020/11/13 Javascript
[37:02]OG vs INfamous 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python yield使用方法示例
2013/12/04 Python
python统计多维数组的行数和列数实例
2018/06/23 Python
Python面向对象基础入门之设置对象属性
2018/12/11 Python
Python中格式化字符串的四种实现
2020/05/26 Python
详解Windows下PyCharm安装Numpy包及无法安装问题解决方案
2020/06/18 Python
美国校园市场:OCM
2017/06/08 全球购物
建筑设计学生的自我评价
2014/01/16 职场文书
幼儿园教师教学反思
2014/02/06 职场文书
《临死前的严监生》教学反思
2014/02/13 职场文书
《埃及的金字塔》教学反思
2014/04/07 职场文书
读书活动总结
2014/04/28 职场文书
珍惜资源保护环境的建议书
2014/05/14 职场文书
班子四风对照检查材料思想汇报
2014/09/29 职场文书
青年志愿者活动感想
2015/08/07 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
干货:如何写好工作计划!
2019/05/17 职场文书
关于考试抄袭的检讨书
2019/11/02 职场文书
JavaScript实现登录窗体
2021/06/22 Javascript
Java SSM配置文件案例详解
2021/08/30 Java/Android