Python内置函数 next的具体使用方法

yipeiwu_com7年前Python基础

Python 3中的File对象不支持next()方法。 Python 3有一个内置函数next(),它通过调用其next ()方法从迭代器中检索下一个项目。 如果给定了默认值,则在迭代器耗尽返回此默认值,否则会引发StopIteration。 该方法可用于从文件对象读取下一个输入行。

语法

以下是next()方法的语法 -

next(iterator[,default])

参数

  1. iterator − 要读取行的文件对象
  2. default − 如果迭代器耗尽则返回此默认值。 如果没有给出此默认值,则抛出 StopIteration 异常

返回值

此方法返回下一个输入行

英文文档:

next(iterator[, default])

Retrieve the next item from the iterator by calling its __next__() method. If default is given, it is returned if the iterator is exhausted, otherwise StopIteration is raised.

说明:

1. 函数必须接收一个可迭代对象参数,每次调用的时候,返回可迭代对象的下一个元素。如果所有元素均已经返回过,则抛出StopIteration 异常。

>>> a = iter('abcd')
>>> next(a)
'a'
>>> next(a)
'b'
>>> next(a)
'c'
>>> next(a)
'd'
>>> next(a)
Traceback (most recent call last):
 File "<pyshell#18>", line 1, in <module>
  next(a)
StopIteration

2. 函数可以接收一个可选的default参数,传入default参数后,如果可迭代对象还有元素没有返回,则依次返回其元素值,如果所有元素已经返回,则返回default指定的默认值而不抛出StopIteration 异常。

>>> a = iter('abcd')
>>> next(a,'e')
'a'
>>> next(a,'e')
'b'
>>> next(a,'e')
'c'
>>> next(a,'e')
'd'
>>> next(a,'e')
'e'
>>> next(a,'e')
'e'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

关于Python中的向量相加和numpy中的向量相加效率对比

直接使用Python来实现向量的相加 # -*-coding:utf-8-*- #向量相加 def pythonsum(n): a = range(n) b = range(n)...

python中的内置函数getattr()介绍及示例

在python的官方文档中:getattr()的解释如下: getattr(object, name[, default]) Return the value of the nam...

详解Python数据分析--Pandas知识点

详解Python数据分析--Pandas知识点

本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘 1. 重复值的处理 利用drop_duplicates()函数删除数据表中重复多余的记录, 比如删除重复多余...

pymongo实现多结果进行多列排序的方法

本文实例讲述了pymongo实现多结果进行多列排序的方法。分享给大家供大家参考。具体分析如下: 这里多列排序即指定多个排序字段。 集合查询结果排序 复制代码 代码如下:>>&...

python主线程捕获子线程的方法

最近,在做一个项目时遇到的了一个问题,主线程无法捕获子线程中抛出的异常。 先看一个线程类的定义 ''''' Created on Oct 27, 2015 @author:...