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

yipeiwu_com7年前Python基础

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

据说range比xrange开销要大,原因是range会直接生成一个list对象,而xrange每次调用返回其中的一个值(参考://www.jb51.net/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)运行结果

(3)小结

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

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

相关文章

如何用Python做一个微信机器人自动拉群

如何用Python做一个微信机器人自动拉群

引言 微信群的用户添加逻辑是 —— 当群人数达到100人后,用户无法再通过扫描群二维码加入,只能让用户先添加群内联系人微信,再由联系人把用户拉进来。这样,联系人员的私人微信会添加大量陌...

python函数中return后的语句一定不会执行吗?

前言 return语句用于退出函数,向调用方返回一个表达式。return在不带参数的情况下(或者没有写return语句),默认返回None。None是一个特殊的值,它的数据类型是None...

python ctypes库2_指定参数类型和返回类型详解

python函数的参数类型和返回类型默认为int。 如果需要传递一个float值给dll,那么需要指定参数的类型。 如果需要返回一个flaot值到python中,那么需要指定返回数据的类...

Python中最好用的命令行参数解析工具(argparse)

Python 做为一个脚本语言,可以很方便地写各种工具。当你在服务端要运行一个工具或服务时,输入参数似乎是一种硬需(当然你也可以通过配置文件来实现)。 如果要以命令行执行,那你需要解析...

python将print输出的信息保留到日志文件中

具体代码如下所示: import sys import os import sys import io import datetime def create_detail_day()...