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


Posted in Python onDecember 15, 2020

在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中返回迭代器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python封装对象实现时间效果
Apr 23 Python
python服务器与android客户端socket通信实例
Nov 12 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
Dec 14 Python
详解如何将python3.6软件的py文件打包成exe程序
Oct 09 Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
Jun 11 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
Jun 19 Python
python multiprocessing多进程变量共享与加锁的实现
Oct 02 Python
python自动化测试之异常及日志操作实例分析
Nov 09 Python
python 计算方位角实例(根据两点的坐标计算)
Jan 17 Python
python 实现端口扫描工具
Dec 18 Python
Django视图类型总结
Feb 17 Python
浅谈Python3中datetime不同时区转换介绍与踩坑
Aug 02 Python
python中slice参数过长的处理方法及实例
Dec 15 #Python
关于django python manage.py startapp 应用名出错异常原因解析
Dec 15 #Python
Window10上Tensorflow的安装(CPU和GPU版本)
Dec 15 #Python
详解python中的异常捕获
Dec 15 #Python
python 6种方法实现单例模式
Dec 15 #Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 #Python
Python爬虫开发与项目实战
Dec 16 #Python
You might like
php上的memcache和memcached两个pecl库
2010/03/29 PHP
什么是JavaScript
2009/08/13 Javascript
Jquery倒计时源码分享
2014/05/16 Javascript
javascript实现的一个随机点名功能
2014/08/26 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
2015/08/25 Javascript
JS延时器提示框的应用实例代码解析
2016/04/27 Javascript
将angular.js项目整合到.net mvc中的方法详解
2017/06/29 Javascript
完美解决手机浏览器顶部下拉出现网页源或刷新的问题
2017/11/30 Javascript
基于vue 开发中出现警告问题去除方法
2018/01/25 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
vue实现的封装全局filter并统一管理操作示例
2020/02/02 Javascript
[01:17:47]TNC vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python实现telnet客户端的方法
2015/04/15 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
Python实现定时备份mysql数据库并把备份数据库邮件发送
2018/03/08 Python
python多进程实现文件下载传输功能
2018/07/28 Python
Python HTML解析模块HTMLParser用法分析【爬虫工具】
2019/04/05 Python
Python Django框架url反向解析实现动态生成对应的url链接示例
2019/10/18 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
2020/01/25 Python
Python打包工具PyInstaller的安装与pycharm配置支持PyInstaller详细方法
2020/02/27 Python
python中rb含义理解
2020/06/18 Python
matplotlib subplot绘制多个子图的方法示例
2020/07/28 Python
浅谈对python中if、elif、else的误解
2020/08/20 Python
scrapy与selenium结合爬取数据(爬取动态网站)的示例代码
2020/09/28 Python
美国鲜花递送:UrbanStems
2021/01/04 全球购物
医学专业毕业生个人求职信
2013/12/25 职场文书
临床医师专业个人自我评价
2014/01/08 职场文书
大学毕业寄语大全
2014/04/10 职场文书
服务理念标语
2014/06/18 职场文书
党员个人批评与自我批评
2014/10/14 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
支教个人总结
2015/03/04 职场文书
药店营业员岗位职责
2015/04/14 职场文书
2017年寒假少先队活动总结
2016/04/06 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers