昨晚一小伙后台问xrange和range有啥区别,讲了下他倒领悟的挺快,其实这也是你各面试Python岗位,经常会遇到的Python面试题,长个心眼哈,说不定明年3月你找工作就用上了。

废话不多说,开始今天的Python面试题目:

问:说说Python中xrange和range的区别?

答:range()和xrange()都是在循环中使用,输出结果一样。

range()返回的是一个list对象,而xrange返回的是一个生成器对象(xrange object)。

xrange()则不会直接生成一个list,而是每次调用返回其中的一个值,内存空间使用极少。因而性能非常好,所以尽量用xrange吧。

在python3 中没有xrange,只有range。range和python2 中的xrange()一样。

下面分别来说说这两者的用法:

1、range()

range 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列。

起点是start,终点是stop,但不包含stop,公差是step。start和step是可选项,没给出start时,从0开始;没给出step时,默认公差为1。

range示例:

>>> range(10) #起点是0,终点是10,但是不包括10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1,10) #起点是1,终点是10,但是不包括10
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1,10,2) #起点是1,终点是10,步长为2
[1, 3, 5, 7, 9]
>>> range(0,-10,-1) #起点是1,终点是10,步长为-1
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0,-10,1) #起点是0,终点是-10,终点为负数时,步长只能为负数,否则返回空
[]
>>> range(0) #起点是0,返回空列表
[]
>>> range(1,0) #起点大于终点,返回空列表
[]

2、xrange()

xrange与range类似,只是返回的是一个"xrange object"生成器对象,而非数组list。

xrange示例:

for i in range(0, 100):print i
for i in xrange(0, 100):print i

这两个基本上都是在循环的时候用:

for i in range(0, 100):print i
for i in xrange(0, 100):print i

再一次提醒:xrange()函数在Python3中已经取消。在python3中range()这种实现被移除了,保留了xrange()的实现,且将xrange()重新命名成range()。所以Python3不能使用xrange(),只能使用range()。

如果对于参考答案有不认同的,大家可以在评论区指出和补充,欢迎你们的指正留言!更多的Python常见经典面试题,也会继续为大家更新!

Python经典面试题:说说Python中xrange和range的区别?相关推荐

  1. python中bytearray和java中byte[]的区别_Python经典面试题:说说Python中xrange和range的区别?...

    昨晚一小伙后台问xrange和range有啥区别,讲了下他倒领悟的挺快,其实这也是你各面试Python岗位,经常会遇到的Python面试题,长个心眼哈,说不定明年3月你找工作就用上了. 废话不多说,开 ...

  2. 【Python面试】 说说Python中xrange和range的区别?

    往期面试题: 谈谈对 Python 和其他语言的区别? 说说4种常用编码的区别? 说说Python面向对象三大特性? 说说Python中有几种数据类型? 废话不多说,开始今天的题目: 问:说说Pyth ...

  3. python2中xrange比range优点_【Python面试】 说说Python中xrange和range的区别?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  4. python range 步长为负数_【Python面试】 说说Python中xrange和range的区别?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  5. python中xrange和range的区别

    2019独角兽企业重金招聘Python工程师标准>>> >>> range(5) [0, 1, 2, 3, 4] >>> range(1,5) [ ...

  6. python中x=x+1的读法-python中xrange和range的区别

    range 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列. range示例: >>> r ...

  7. python中xrange函数_python中xrange和range的区别

    range 函数说明:range([start,] stop[, step]),根据start与stop指定的范围以及step设定的步长,生成一个序列. range示例: >>> r ...

  8. python经典面试题100例 面试宝典

    人生苦短 我用 Python 芝麻开门! python 进阶 1 python 经典面试题 9 python 面试 100 例 21 python 面试题总结 101 python 进阶 1 PEP8 ...

  9. 21道Python经典面试题,助你offer拿到手软!

    导读:又到"金九银十"招聘黄金季,21道Python经典面试题助你offer拿到手软,收好不谢! 01 Python如何实现单例模式? Python有两种方式可以实现单例模式,下面 ...

最新文章

  1. “23岁本科生发14篇SCI”,文章被学校官网悄悄删了,你怎么看?
  2. 脚本1)启动jetty的脚本
  3. 【Micropython】发光二极管手工制作炫彩跑马灯
  4. 大厂笔试 java基础
  5. jsr303jsp页面怎么显示错误信息_jsp校验信息不显示
  6. 多核编程与单核多线程编程
  7. 纯CSS实现3D照片墙
  8. 【BZOJ1202】【HNOI2005】狡猾的商人
  9. java stub_Java Stub 研究学习(2)
  10. 总结:Postman测试、IP:POST测试、Postman转换到python测试(Linux下的docker应用部署web容器并存储数据到mysql,调用API)
  11. c语言99乘法表流程图表,C语言做99乘法表.doc
  12. 关于安卓打包脚本aab
  13. 学计算机办公文员软件,办公文员必须掌握的办公软件有哪些
  14. 数据防泄密·工控安全保障方案
  15. 计算机分区容量计算公式,100g等于多少mb?电脑分区100g是多少mb?电脑100g内存等于多少mb?...
  16. 2021-2027全球与中国BFSI中的聊天机器人市场现状及未来发展趋势
  17. 场曲 zemax示例(概念、校正)
  18. Android开发已经到了要烧香求职的地步了?
  19. read函数和fread函数的区别
  20. 职工线上健步走活动小程序方案,通过微信小程序实现功能,getElementById(“demo“).innerHTML=x

热门文章

  1. 让我又爱又恨的Java《打工人的那些事》
  2. PlantUML-时序图
  3. 从零开始学google地图API(1)--获取api_key并显示google地图
  4. 【JD资讯】什么是端口映射?路由器如何设置端口映射?
  5. 用Steam教育启发学生多元化思维
  6. 纯CSS绘制圣诞老人头像
  7. adb shell之APP性能测试
  8. 什么是代理服务器,代理HTTP?清楚地解释它是如何工作的(盛世ip)
  9. 女生学java怎么样?女孩子学java会不会很难?
  10. 对话机器人-检索与生成模型