Python 3 File next() 方法
Python 3 中的 File 对象不支持 next() 方法
Python 3 的内置函数 next() 通过迭代器调用文件对象的 __next__()
方法返回下一项
在循环中,next() 方法会在每次循环中调用,该方法返回文件的下一行,如果到达结尾( EOF ),则触发 StopIteration
语法
next(iterator[,default])
参数
参数 | 说明 |
---|---|
iterator | 一个文件对象 |
default | 如果达到文件末尾,不是触发 StopIteration 异常,而是返回参数 default |
返回值
返回文件下一行,如果到达文件末尾,则触发 StopIteration 异常
实例
假设当前目录下存在文件 demo.txt
内容如下
www.twle.cn www.twle.cn www.twle.cn www.twle.cn www.twle.cn
下面的代码在循环中使用 next() 方法输出文件的下一行
#!/usr/bin/python # 打开文件 fp = open("demo.txt", "rw+") print ( "文件名为: ", fp.name ) for index in range(5): line = next(fp) print ( "第 %d 行 - %s" % (index, line) ) # 关闭文件 fp.close()
运行以上 Python 代码,输出结果如下
文件名为: demo.txt 第 0 行 - www.twle.cn 第 1 行 - www.twle.cn 第 2 行 - www.twle.cn 第 3 行 - www.twle.cn 第 4 行 - www.twle.cn