对Python 3.2 迭代器的next函数实例讲解


Posted in Python onOctober 18, 2018

在python中,使用iter函数可以获得有序聚合类型的迭代器,我个人将迭代器理解为带有next指针的单向链表,获取到的迭代器为链表的表头,表头内容为空,next指针指向有序聚合类型的第一个元素。在访问链表最后一个元素的next指针时,python会报错StopIteration。

Python3.x以上的版本在使用next函数时需要注意的是:next()函数在3.x以上的版本更改为__next__().

使用for迭代器打印文件中的内容的代码如下:

file_obj=open(r'E:\Project\Python\123.txt','r')
 
for string in file_obj:
 string=string.rstrip('\n')
 print(string)
 
file_obj.close()

在上述代码中,文件对象file_obj为有序聚合类型,for循环会自动调用file_obj的迭代器,并调用该迭代器的next函数,知道发生StopIteration错误。

下边的代码模拟for循环中的迭代器,显式调用next函数访问字符串的元素。

s='www.scu.edu.com'
 
it=iter(s)
length=len(s)
i=0
while i<length:
 print(it.__next__())
 i=i+1

以上这篇对Python 3.2 迭代器的next函数实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
Oct 23 Python
python通过wxPython打开一个音频文件并播放的方法
Mar 25 Python
Python删除windows垃圾文件的方法
Jul 14 Python
Python中多线程的创建及基本调用方法
Jul 08 Python
Python实现桶排序与快速排序算法结合应用示例
Nov 22 Python
python实现的按要求生成手机号功能示例
Oct 08 Python
python NumPy ndarray二维数组 按照行列求平均实例
Nov 26 Python
python调用函数、类和文件操作简单实例总结
Nov 29 Python
python 实现在shell窗口中编写print不向屏幕输出
Feb 19 Python
Python @property及getter setter原理详解
Mar 31 Python
小白教你PyCharm从下载到安装再到科学使用PyCharm2020最新激活码
Sep 25 Python
python的html标准库
Apr 29 Python
对python中的高效迭代器函数详解
Oct 18 #Python
对Python中内置异常层次结构详解
Oct 18 #Python
Python运维开发之psutil库的使用详解
Oct 18 #Python
python实现自动登录后台管理系统
Oct 18 #Python
python 对给定可迭代集合统计出现频率,并排序的方法
Oct 18 #Python
python实现简单登陆系统
Oct 18 #Python
Python字典中的键映射多个值的方法(列表或者集合)
Oct 17 #Python
You might like
新版mysql+apache+php Linux安装指南
2006/10/09 PHP
深入PHP autoload机制的详解
2013/06/09 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
解析Javascript小括号“()”的多义性
2013/12/03 Javascript
javascript中apply和call方法的作用及区别说明
2014/02/14 Javascript
jQuery验证插件validation使用指南
2015/04/21 Javascript
异步JavaScript编程中的Promise使用方法
2015/07/28 Javascript
JS实现自定义简单网页软键盘效果代码
2015/11/05 Javascript
学习JavaScript鼠标响应事件
2015/12/25 Javascript
jQuery表格插件datatables用法汇总
2016/03/29 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
angularjs下ng-repeat点击元素改变样式的实现方法
2018/09/12 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
VUEX采坑之路之获取不到$store的解决方法
2019/11/08 Javascript
JS实现简单的表格增删
2020/01/16 Javascript
vue 实现基础组件的自动化全局注册
2020/12/25 Vue.js
python对常见数据类型的遍历解析
2019/08/27 Python
python实现批量文件重命名
2019/10/31 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
pyqt5数据库使用详细教程(打包解决方案)
2020/03/25 Python
python zip,lambda,map函数代码实例
2020/04/04 Python
Python实现JS解密并爬取某音漫客网站
2020/10/23 Python
CSS3系列教程:背景图片(背景大小和多背景图) 应用说明
2012/12/19 HTML / CSS
美国在线鲜花速递:ProFlowers
2017/01/05 全球购物
美国沃尔玛网上超市:Walmart
2020/08/14 全球购物
自考生自我鉴定范文
2013/10/01 职场文书
师生聚会感言
2014/01/26 职场文书
材料工程专业毕业生求职信
2014/03/04 职场文书
跟单业务员岗位职责
2014/03/08 职场文书
库房保管员岗位职责
2014/04/07 职场文书
文秘应届生求职信
2014/07/05 职场文书
女生抽烟检讨书
2014/10/05 职场文书
Spring Boot 底层原理基础深度解析
2022/04/03 Java/Android
MySQL脏读,幻读和不可重复读
2022/05/11 MySQL