Advertisement

Python中的迭代器与生成器技巧(1):涵盖遍历操作、代理模式,并演示如何创建迭代对象及实现反向遍历

阅读量:

1. 手动遍历迭代器 next()

对一个可迭代对象中的全部元素进行逐个访问,但又不希望通过for循环实现。若希望手动完成对可迭代对象的遍历,可以借助 next() 函数,并在代码中处理 StopIteration 异常。一般来说,StopIteration 用于标识迭代过程的结束。不过,在手动调用 next() 函数的情况下,也可以通过返回特定值的方式来表示迭代的终止,例如 None。下面以读取文件中所有行为例进行说明。

复制代码
 def manual_iter(filename):

    
     with open(filename) as f:
    
     try:
    
         while True:
    
             line = next(f)
    
             print(line, end = '')
    
     except StopIteration:
    
         pass
    
     
    
 manual_iter(filename = 'test.txt')      
    
  
    
 ############################
    
  
    
 with open('t

全部评论 (0)

还没有任何评论哟~