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 相关文章推荐
pyv8学习python和javascript变量进行交互
Dec 04 Python
Python多线程编程(四):使用Lock互斥锁
Apr 05 Python
python daemon守护进程实现
Aug 27 Python
python3库numpy数组属性的查看方法
Apr 17 Python
python list元素为tuple时的排序方法
Apr 18 Python
django 多数据库配置教程
May 30 Python
python实现超市商品销售管理系统
Oct 25 Python
Python字典中的值为列表或字典的构造实例
Dec 16 Python
python如何保存文本文件
Jun 07 Python
python能在浏览器能运行吗
Jun 17 Python
Python把图片转化为pdf代码实例
Jul 28 Python
python爬虫---requests库的用法详解
Sep 28 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中路径问题的解决方案
2006/10/09 PHP
PHP连接sql server 2005环境配置及问题解决
2014/08/08 PHP
PHP中常用的字符串格式化函数总结
2014/11/19 PHP
汇总PHPmailer群发Gmail的常见问题
2016/02/24 PHP
laravel 实现设置时区的简单方法
2019/10/10 PHP
javascript 学习之旅 (1)
2009/02/05 Javascript
jquery.AutoComplete.js中文修正版(支持firefox)
2010/04/09 Javascript
js 触发select onchange事件代码
2014/03/20 Javascript
jQuery中DOM树操作之使用反向插入方法实例分析
2015/01/23 Javascript
js实现百度联盟中一款不错的图片切换效果完整实例
2015/03/04 Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
2015/03/25 Javascript
轻松学习jQuery插件EasyUI EasyUI表单验证
2015/12/01 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
Web前端开发之水印、图片验证码
2016/11/27 Javascript
jquery删除数组中重复元素
2016/12/05 Javascript
JQuery实现ajax请求的示例和注意事项
2018/12/10 jQuery
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
python处理文本文件实现生成指定格式文件的方法
2014/07/31 Python
python数组过滤实现方法
2015/07/27 Python
读写json中文ASCII乱码问题的解决方法
2016/11/05 Python
pandas DataFrame 警告(SettingWithCopyWarning)的解决
2019/07/23 Python
python 给图像添加透明度(alpha通道)
2020/04/09 Python
Python xlrd/xlwt 创建excel文件及常用操作
2020/09/24 Python
python 实现"神经衰弱"翻牌游戏
2020/11/09 Python
有原因的手表:Flex Watches
2019/03/23 全球购物
迪士尼西班牙官方网上商店:ShopDisney西班牙
2020/02/02 全球购物
美国知名眼镜网站:Target Optical
2020/04/04 全球购物
优秀员工自荐信范文
2013/10/05 职场文书
总务岗位职责
2013/11/19 职场文书
社会实践心得体会
2014/01/03 职场文书
爱耳日活动总结
2014/04/30 职场文书
模具设计与制造专业自荐书
2014/07/01 职场文书
中学教师师德师风演讲稿
2014/08/22 职场文书
2015年青年教师工作总结
2015/05/25 职场文书
基于Redis6.2.6版本部署Redis Cluster集群的问题
2022/04/01 Redis