1. 程式人生 > >10-5 叠代器

10-5 叠代器

可叠代對象 循環 __iter__ 叠代器 生成 方法 占用 容器 獲取

叠代器協議----->內部含有__next__和__iter__方法的就是叠代器
只要是能被for循環的數據類型,就一定擁有__iter__方法,只要含有__iter__方法都是可叠代的
只要是叠代器,一定可叠代
可叠代的.__iter__()方法就可以得到一個叠代器
叠代器中的__next__()方法可以一個一個的獲取值

for循環其實就是在使用叠代器
只有是可叠代對象時,才能用for
當遇到一個新的變量時,不確定是否能用for循環時,判斷它是否叠代

叠代器的好處:
1.從容器類型中一個個的取值,可以去到所有的值
2.可以節省內存空間
叠代器並不會在內存中再占用一大塊內存,而是隨著循環,每次生成一個,每次next給一個

10-5 叠代器