1. for 循環(huán)什么?
for 循環(huán)是對(duì)容器進(jìn)行迭代的過程。
2. 什么是迭代?
迭代就是從某個(gè)容器對(duì)象中逐個(gè)地讀取元素,直到容器中沒有更多元素為止。
3. 哪些對(duì)象支持迭代操作?任何對(duì)象都可以嗎?
可迭代對(duì)象需要實(shí)現(xiàn)__iter__方法,并返回一個(gè)迭代器,迭代器(Iterator)只需要實(shí)現(xiàn)__next__方法。
4. 總結(jié):for循環(huán)的本質(zhì)
for循環(huán)的本質(zhì)是不斷調(diào)用迭代器的__next__方法,直到出現(xiàn)StopIteration異常(這個(gè)異常Python自己會(huì)處理,不會(huì)暴露給開發(fā)者)退出循環(huán)。
(以上均摘自Python之禪)