迭代器是 23 种设计模式中最常用的一种(之一),在 Python 中随处可见它的身影,我们经常用到它,但是却不一定意识到它的存在。在关于迭代器的系列文章中(链接见文末),我至少提到了 23 种生成迭代器的方法。有些方法是专门用于生成迭代器的,还有一些方法则是为了解决别的问题而“暗中”使用到迭代器。

在系统学习迭代器之前,我一直以为 range() 方法也是用于生成迭代器的,现在却突然发现,它生成的只是可迭代对象,而并不是迭代器! (PS:Python2 中 range() 生成的是列表,本文基于Python3,生成的是可迭代对象)

于是,我有了这样的疑问:为什么 range() 不生成迭代器呢?在查找答案的过程中,我发现自己对 range 类型的认识存在一些误区。因此,本文将和大家全面地认识一下 range ,期待与你共同学习进步。

1、range() 是什么?

它的语法:range(start, stop [,step]) ;start 指的是计数起始值,默认是 0;stop 指的是计数结束值,但不包括 stop ;step 是步长,默认为 1,不可以为 0 。range() 方法生成一段左闭右开的整数范围。

对于 range() 函数,有几个注意点:(1)它表示的是左闭右开区间;(2)它接收的参数必须是整数,可以是负数,但不能是浮点数等其它类型;(3)它是不可变的序列类型,可以进行判断元素、查找元素、切片等操作,但不能修改元素;(4)它是可迭代对象,却不是迭代器。

2、 为什么

python in range函数 (1、10、-1)_python range函数语法以及一些讨论相关推荐

  1. python range函数怎么表示无限_python range函数怎么用

    python range函数怎么用? python range() 函数可创建一个整数列表,一般用在 for 循环中. 函数语法range(start, stop[, step]) 参数说明: sta ...

  2. python range函数怎么表示无限_Python range() 函数 | 菜鸟教程

    Python range() 函数用法 python range() 函数可创建一个整数列表,一般用在 for 循环中. 函数语法 range(start, stop[, step]) 参数说明: s ...

  3. python的函数的对象属性_Python帮助函数调试函数 用于获取对象的属性及属性值...

    Python帮助函数调试函数 用于获取对象的属性及属性值 刚接触Python,上篇 <Python入门>第一个Python Web程序--简单的Web服务器 中调试非常不方便,不知道对象详 ...

  4. python中range和arange的区别_Python——range()、xrange()和np.arange()应用说明

    (1)range()和xrange()函数在 python 2.x 版本中,同时存在range()和xrange()函数,其中,range()返回值是一个列表,xrange()返回值是一个迭代值: 在 ...

  5. python中def fun()是什么意思_python学习函数

    函数 对象 模块 定义函数 def MyFirstFunction(): print('第一个函数') ······ 调用函数 MyFirstFunction() 加入参数 def MySecondF ...

  6. python函数由什么组成_python的函数

    1.什么是函数? 有两个变量 x 和 y ,当 x 取其变化范围中的每一个特定值时,相应地有唯一的 y 与它对应,则称 y 是 x 的函数.记为 y = f ( x ),其中 x 为自变量, y 为因 ...

  7. python中map函数返回值类型_python map函数

    from:https://www.cnblogs.com/AlwaysWIN/p/6202320.html 描述 map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序 ...

  8. python中函数的定义包括_python中函数的定义及调用

    python中函数的定义及使用方法 1.函数的概念:函数是将具有独立功能的代码块组织为一个整体,使其具有特殊功能的代码集; 2.函数的作用:使用函数可以加强代码的复用性,提高程序编写的效率; 3.函数 ...

  9. python回调函数实例详解_Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  10. python函数的递归小兔子_python中函数递归

    函数递归简单的来说就是函数自己调用自己,实现和循环类似的效果,通过return关键字来实现自己调用自己. 一个简单的循环例子,1~100的累加,这可能是很多人学习循环编写的第一个程序,用循环和递归分别 ...

最新文章

  1. 西电计算机学院(原软件学院)软件工程考研复试
  2. PMBOK(第六版) PMP笔记——《十一》第十一章(项目风险管理)
  3. Angular16 Angular整合zTree、异步加载节点数据
  4. 测试人员眼中的问题解决策略
  5. 【李宏毅2020 ML/DL】P88-96 Meta Learning – MAML | Reptile
  6. 编程语言python怎么读-网红编程语言Python将纳入高考你怎么看?
  7. 刮刮乐html5效果擦除,HTML5实现刮刮卡的效果
  8. 会声会影2022美颜功能介绍 教你玩转视频美颜
  9. ADO.NET数据库编程
  10. 从零开始学安全(七)●Linux基础命令学习笔记
  11. Chrome 管理搜索引擎
  12. 【Windows Server 2019】DHCP服务器配置与管理——安装和配置DHCP服务 Ⅱ
  13. 速卖通代运营说:速卖通太难了!2020去做不算晚,但是也绝对不早!
  14. 消费者心声:我手机的镜头已经够好了,什么时候给我防防水?
  15. Swift减少print函数的耗费
  16. php英文怎么读,100的英文怎么读_单词及读音
  17. STL-夏天来了~~好开心啊,呵呵,好多好多水果~~-C++
  18. 20201218英语单词学习(仅供自己记录)
  19. 弱网测试及QNET工具介绍
  20. SnowField目标效果2-6:斜面移动2更真实的斜坡

热门文章

  1. jsp+servlet手机管理(增删改查 二)
  2. F28335第八篇——CCS6.0主题设置
  3. Use GraceNote SDK in iOS(一)通过序列化的GDO查询专辑封面
  4. MATLAB利用菲涅尔公式仿真光的折射
  5. 微信小程序报错 Now you can provide attr `wx:key` for a `wx:for` to improve performance.
  6. 你可能不知道的MySQL中的定点数类型
  7. win 10 家庭版升级为专业版方法
  8. 分享四个不得不说的科普类APP,堪称宝藏级别,个个闻所未闻
  9. 【10K功能测试】-【20K自动化测试】之间的区别
  10. 智能矿山成首批人工智能示范应用场景 如何实现?