Python中和迭代有关的两个函数next()和iter()


  next():

  next()返回迭代器的下一个项目

  next语法:

next(iterator[,dafault])

  iterator -- 可迭代对象

  default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。

  e.g.:

 1 #!/usr/bin/python
 2 # -*- coding: UTF-8 -*-
 3  
 4 # 首先获得Iterator对象:
 5 it = iter([1, 2, 3, 4, 5])
 6 # 循环:
 7 while True:
 8     try:
 9         # 获得下一个值:
10         x = next(it)
11         print(x)
12     except StopIteration:
13         # 遇到StopIteration就退出循环
14         break

  

  iter():

  iter()函数用来生成迭代器

  iter语法:

iter(object[, sentinel])

  object -- 支持迭代的集合对象。

  sentinel -- 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 object。

  e.g.:

>>>lst = [1,2,3]
>>>for i in iter(lst):
            print(i)
...
...
1
2
3    

 

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM