python next()和iter()函数原理解析


Posted in Python onFebruary 07, 2020

这篇文章主要介绍了python next()和iter()函数原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

我们首先要知道什么是可迭代的对象(可以用for循环的对象)Iterable:

一类:list,tuple,dict,set,str

二类:generator,包含生成器和带yield的generatoe function

而生成器不但可以作用于for,还可以被next()函数不断调用并返回下一个值,可以被next()函数不断返回下一个值的对象称为迭代器:Iterator

生成器都是Iterator对象,但list,dict,str是Iterable,但不是Iterator,要把list,dict,str等Iterable转换为Iterator可以使用iter()函数

next()用法:

next(iterator[, default])

  • iterator -- 可迭代对象
  • default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。
>>> list_ = [1,2,3,4,5]
>>> it = iter(list_)
>>> next(it,'-1')
>>> next(it,'-1')
>>> next(it,'-1')
>>> next(it,'-1')
>>> next(it,'-1')
>>> next(it,'-1')
'-1'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
巧用Python装饰器 免去调用父类构造函数的麻烦
May 18 Python
python实现爬虫下载漫画示例
Feb 16 Python
Python找出文件中使用率最高的汉字实例详解
Jun 03 Python
详解Python中的日志模块logging
Jun 19 Python
tensorflow 获取模型所有参数总和数量的方法
Jun 14 Python
3个用于数据科学的顶级Python库
Sep 29 Python
使用PyTorch实现MNIST手写体识别代码
Jan 18 Python
对pytorch的函数中的group参数的作用介绍
Feb 18 Python
浅谈python输出列表元素的所有排列形式
Feb 26 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
Mar 06 Python
matlab、python中矩阵的互相导入导出方式
Jun 01 Python
Python面试不修改数组找出重复的数字
May 20 Python
使用tensorflow实现矩阵分解方式
Feb 07 #Python
python匿名函数lambda原理及实例解析
Feb 07 #Python
Python用input输入列表的实例代码
Feb 07 #Python
详解Python 重学requests发起请求的基本方式
Feb 07 #Python
对tensorflow 中tile函数的使用详解
Feb 07 #Python
TensorFlow2.0矩阵与向量的加减乘实例
Feb 07 #Python
Tensorflow分批量读取数据教程
Feb 07 #Python
You might like
php面向对象全攻略 (八)重载新的方法
2009/09/30 PHP
上传文件先创建目录 再上传到目录里面去
2010/12/29 PHP
php中利用str_pad函数生成数字递增形式的产品编号
2013/09/30 PHP
实用的简单PHP分页集合包括使用方法
2013/10/21 PHP
php四种基础算法代码实例
2013/10/29 PHP
Laravel路由设定和子路由设定实例分析
2016/03/30 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
2017/07/09 PHP
PHP5.5基于mysqli连接MySQL数据库和读取数据操作实例详解
2019/02/16 PHP
PHP常用正则表达式精选(推荐)
2019/05/28 PHP
js关闭浏览器窗口及检查浏览器关闭事件
2013/09/03 Javascript
编写js扩展方法判断一个数组中是否包含某个元素
2013/11/08 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
jQuery实现点击按钮弹出可关闭层的浮动层插件
2015/09/19 Javascript
Vue2.x中的父组件传递数据至子组件的方法
2017/05/01 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
jQuery实现table中两列CheckBox只能选中一个的示例
2017/09/22 jQuery
vue 在methods中调用mounted的实现操作
2020/08/07 Javascript
SublimeText 2编译python出错的解决方法(The system cannot find the file specified)
2013/11/27 Python
在Python中处理字符串之ljust()方法的使用简介
2015/05/19 Python
Python数组定义方法
2016/04/13 Python
Python使用lxml模块和Requests模块抓取HTML页面的教程
2016/05/16 Python
python魔法方法-属性访问控制详解
2016/07/25 Python
python SocketServer源码深入解读
2019/09/17 Python
django ajax发送post请求的两种方法
2020/01/05 Python
解决Tensorboard 不显示计算图graph的问题
2020/02/15 Python
Python过滤掉numpy.array中非nan数据实例
2020/06/08 Python
Python3通过chmod修改目录或文件权限的方法示例
2020/06/08 Python
pycharm中leetcode插件使用图文详解
2020/12/07 Python
宏碁西班牙官网:Acer西班牙
2021/01/08 全球购物
潘多拉珠宝美国官方网站:Pandora US
2020/06/18 全球购物
岗位标兵事迹材料
2014/05/17 职场文书
2014年维修工作总结
2014/11/22 职场文书
健康状况证明书
2014/11/26 职场文书
2014幼儿园班主任工作总结
2014/12/04 职场文书
繁星春水读书笔记
2015/06/30 职场文书
从QQtabBar看css命名规范BEM的详细介绍
2021/08/07 HTML / CSS