Python - for循环的本质

Posted Rocinante

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python - for循环的本质相关的知识,希望对你有一定的参考价值。

参考

  1. https://foofish.net/how-for-works-in-python.html

for循环可以迭代一个可迭代(iterable)的对象

原理

  1. 生成这个可迭代对象(实现了__iter__方法的就叫可迭代对象)的迭代器(xx.__iter__())。
  2. 用迭代器协议(实现了__next__方法)去不断访问对象,捕捉到StopIteration就停止迭代。

好处

for循环遵循迭代器协议去访问对象,这样统一了访问接口,更加通用(这也是协议的好处)。

以上是关于Python - for循环的本质的主要内容,如果未能解决你的问题,请参考以下文章

for循环的本质

python为啥for循环只查到一次数据

#yyds干货盘点# 5. Python 循环的本质就是一段代码懒得重复写

python中for循环的底层实现机制 迭代

Python迭代器 —— 实现for循环

通过 for 循环,比较 Python 与 Ruby 编程思想的差别