next在python中返回迭代器的实例方法

 更新时间:2020年12月15日 14:35:21   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于next在python中返回迭代器的实例方法,有兴趣的朋友们可以尝试下。

在python中有不少对于集合迭代的方法,我们把程序运行后的再一次循环叫做迭代,每一次都循环都可以看做是一次迭代。那么在迭代结束后,我们需要使用next函数来返回迭代器中。接下来我们就next的用法、参数、返回值、在python中返回迭代器的实例给大家进行展示。

1.next()用法

next(iterator[, default])

2.参数说明

iterable -- 可迭代对象

default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。

3.返回值

返回下一个项目。

4.实例

class test():
  def __init__(self,data=1):
    self.data = data
  def __next__(self):
    if self.data > 5:
      raise StopIteration
    else:
      self.data+=1
      return self.data
t = test(3)  
for i in range(3):
print(t.__next__())

输出:

4

5

6

Python迭代器的用法

迭代器的用法:

首先说两个概念,一个是可迭代的对象一个是迭代器对象,两个不同

可迭代的(Iterable):就是可以for循环取数据的,比如字典、列表、元组、字符串等,不可使用next()方法。

迭代器(Iterator),也是可以依次迭代取出数据的对象,在内存空间是这样存储的:<list_iterator object at 0x01E35770>占用内存小,并且可以使用next()方法依次取数据

可以使用isinstance()方法来判断一个对象是可迭代对象还是迭代器对象

比如:

>>> a = [x for x in range(3)]       #生成一个列表
>>> from collections import Iterable   #导入Iterable模块
>>> isinstance(a,Iterable)       #使用isinstance(“”,Iterable)判断是否是可迭代的
True                #返回True
>>> from collections import Iterator   #导入Iterator模块
>>> isinstance(a,Iterator)       #使用isinstance(“”,Iterator)判断是否是迭代器对象
False                #返回False

从上面的结果可以看出来,列表是一个可迭代的对象,但是不是迭代器,同样的字典,元组,字符串也不是迭代器,另外,数字既不是迭代器对象,也不是可迭代的对象。

到此这篇关于next在python中返回迭代器的实例方法的文章就介绍到这了,更多相关next如何在python中返回迭代器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • tornado捕获和处理404错误的方法

    tornado捕获和处理404错误的方法

    这篇文章主要介绍了tornado捕获和处理404错误的方法,方法很简单,只要覆写write_error方法就可以,看下面的代码就明白了
    2014-02-02
  • 基于Python实现自动扫雷详解

    基于Python实现自动扫雷详解

    这篇文章主要介绍了如何利用Python+OpenCV实现了自动扫雷,文中的示例代码讲解详细,对我们学习Python有一定的帮助,需要的可以参考一下
    2022-01-01
  • 详解python中Numpy的属性与创建矩阵

    详解python中Numpy的属性与创建矩阵

    这篇文章给大家分享了关于python中Numpy的属性与创建矩阵的相关知识点内容,有兴趣的朋友们可以学习参考下。
    2018-09-09
  • Python之关于类变量的两种赋值区别详解

    Python之关于类变量的两种赋值区别详解

    这篇文章主要介绍了Python之关于类变量的两种赋值区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python查找两个有序列表中位数的方法【基于归并算法】

    Python查找两个有序列表中位数的方法【基于归并算法】

    这篇文章主要介绍了Python查找两个有序列表中位数的方法,结合实例形式分析了Python基于归并算法遍历、计算有序列表相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • Python堆排序原理与实现方法详解

    Python堆排序原理与实现方法详解

    这篇文章主要介绍了Python堆排序原理与实现方法,结合实例形式详细分析了Python堆排序的概念、原理、实现方法及相关操作注意事项,需要的朋友可以参考下
    2018-05-05
  • pandas将DataFrame的列变成行索引的方法

    pandas将DataFrame的列变成行索引的方法

    下面小编就为大家分享一篇pandas将DataFrame的列变成行索引的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 利用python实现AR教程

    利用python实现AR教程

    今天小编就为大家分享一篇利用python实现AR教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • python leetcode 字符串相乘实例详解

    python leetcode 字符串相乘实例详解

    这篇文章主要介绍了python leetcode 字符串相乘的示例代码,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • 利用python list完成最简单的DB连接池方法

    利用python list完成最简单的DB连接池方法

    这篇文章主要介绍了利用python list完成最简单的DB连接池方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08

最新评论