直观说明:http://ciniao.me/article.php?id=17

原因分析:http://blog.csdn.net/liangliyin/article/details/5980505

在Python中range和xrange是不同的,你正确使用了吗?两者的区别是微妙的。为了简单起见,这里省略两个函数的可选参数start和step。range返回值和想象的一样:一个从0开始指定长度的连续整数序列。然而,xrange返回一个"xrange 对象",该对象非常类似于迭代器。如果你曾经研究过迭代器,则两者的区别就很明显了。下面是个例子:

range(1000000)

xrange(1000000)

range(1000000)会返回一个100万个整数的序列,而xrange(1000000)会返回(本质上)一个迭代序列。显然xrange支持迭代,而range不支持。这种收益是很小的,因为(用Python手册的话说)"当需要元素的时候,xrange仍然要创建它们"。但是无论需要的序列多大,每次遍历时xrange消耗相同量的内存。在遍历极端的大序列时,这是相对于range的很大优势。另一个优势也是明显的:当你的代码在遍历已经产生的序列时调用break的话, xrange显然比range要好,因为xrange会消耗更少的内存。

python中range和xrange的区别_ZH奶酪:Python中range和xrange的区别相关推荐

  1. python基础教程第二版和第三版有什么区别-《Python基础教程》(第2版修订版)中要注意的地方...

    想必现在大家学习Python都会用3.0及以上的版本了,虽然2.X的版本依然很多,但是这两年随着部分开源项目不再支持2.X版本,3.X已经成为趋势. 正是在这样的大背景下,我最近用这本<Pyth ...

  2. python中序列类型和数组之间的区别_「Python」序列构成的数组

    一.Python 标准库的序列类型分为: 容器序列: 能够存放不同类型数据的序列(list.tuple.collections.deque). 扁平序列: 只能容纳一种类型的数据(str.bytes. ...

  3. [转载] 【Python】range()、np.arange()、np.linspace()、np.logspace()的使用和区别

    参考链接: Python中的numpy.arange 近期在调试深度学习相关的代码时,经常隔三差五遇到range().np.arange().np.linspace().np.logspace()一系 ...

  4. python使用pandas计算dataframe中每个分组的极差、分组数据的极差(range)、使用groupby函数和agg函数计算分组的最大值和最小值

    python使用pandas计算dataframe中每个分组的极差.分组数据的极差(range).使用groupby函数和agg函数计算分组的最大值和最小值 目录

  5. range函数python_range()函数以及Python中的示例

    range函数python Python range()函数 (Python range() function) The range() is a built-in function in Pytho ...

  6. python 中range(10)什么意思_range什么意思python编程【面试题详解】

    今天爱分享给大家带来range什么意思python编程[面试题详解],希望能够帮助到大家. 今天来谈一谈关于Python中range()的作用,和我个人的理解. range的中文意思是,范围.幅度.或 ...

  7. python中eval函数和int函数功能一样_python中eval与int的区别浅析

    python中eval和int的区别是什么?下面给大家介绍一下: 1.eval()函数 eval()能够以Python表达式的方式解析并执行字符串,并将返回结果输出.eval()函数将去掉字符串的两个 ...

  8. python中randn出错_randn和normal之间的Python区别 - python

    我正在使用Python的randn模块中的normal和numpy.random函数.这些功能与我在http://docs.scipy.org手册中所读的内容非常相似(它们都与高斯分布有关),但是我应 ...

  9. python中花括号什么作用_Python3中小括号()、中括号[]、花括号{}的区别详解

    介绍 在Python语言中最常见的括号有三种,分别是:小括号().中括号[].花括号{}:其作用也不相同,分别用来代表不同的Python基本内置数据类型. 小括号() Python中的小括号(): 代 ...

最新文章

  1. 将Tensor核心引入标准Fortran
  2. PROC系列之---/proc/pid/stat
  3. mac/windows 端口占用解决记录
  4. mysql 5.6 生产my.cnf_一个生产可用的mysql参数文件my.cnf
  5. 字符串匹配BF/RK/BM/KMP算法
  6. golang 查询mysql_Golang查询MySQL数据库
  7. 计算机抓取整个屏幕的按键,技术员搞定电脑截全屏快捷键【搞定方法】
  8. 年终将至,财务人如何做好数据分析?
  9. 小程序练习 - rawData和userInfo
  10. “小马激活”病毒新变种分析报告
  11. Swiper去除点击选项卡时出现的蓝色边框和蓝色背景
  12. 《Qt5 Cadaques》学习笔记(六):QT QUICK Controls 2
  13. 5月27日 | 极客俱乐部:集成平台赋能业务流程再造与创新
  14. 2023MyBatis全新面试题【30题】
  15. Web全栈~25.文件
  16. 折半查找判定树的画法(较简单易懂!)
  17. python统计中文字符_使用 Python 统计中文字符的数量
  18. 上海海洋大学计算机专业是几本,上海海洋大学是几本 录取分数线一般在多少...
  19. (1)mysql--查询成绩最高和最低的人
  20. 弯道超车老司机戏耍智能合约——竞态条件漏洞 | 漏洞解析连载之三

热门文章

  1. 汇编指令入门级整理 | 原力计划
  2. 搞机器学习,Python 和 R 哪个更合适?
  3. RocketMQ 一行代码造成大量消息发送失败
  4. 人人在谈的物联网,入门开发真难!
  5. Fortinet推出集成化SD-WAN解决方案
  6. 老码农:我为什么建议程序员尽早进入大厂?
  7. 程序员如何巧妙学习算法技巧?
  8. 200 行代码,一行行教你自制微信机器人
  9. 如何利用机器学习算法解读股市行情?
  10. 如何快速学习Java? 1