Python3.2官方文档翻译--迭代器

6.9 迭代器

到眼下为止。你可能已注意到很多容器对象都能够用for语句进行循环:

 

这样的訪问风格清楚简洁方便。

 迭代器的应用是python遍历统一。在这样的场景背后。for语句调用容器对象iter()方法。

函数返回一个迭代器对象。在迭代器对象里定义了每次仅仅能訪问一个元素的方法_next_()。 当容器里面没有元素的时候,该方法就会抛出一个stopInteration异常,用来提醒for循环终止。你能够用内置的next()调用_next_方法:下面这个样例显示它时怎样工作的。

 

想必你已经看到迭代器背后的实现机制。给你自己的类加入一个迭代器是非常easy实现的。定义一个_iter_()方法用来返回一个包括_next_()方法的对象。假设类中定义了_next_()方法,那么_iter_()就会返回本身。

 


posted @ 2017-08-08 13:53  yfceshi  阅读(209)  评论(0编辑  收藏  举报