可迭代對象
能使用 for 循環
for i in obj:
xxxx
的都是可迭代對象
生成器
生成器不但可以作用於for循環,還可以通過next()函數不斷返回下一個值
生成器有兩種形生成器不但可以作用於for循環,還可以通過next()函數不斷返回下一個值式, 一種是將列表生成式的兩側的方括號換成圓括號; 第二種就是在函數中增加yield關鍵字
迭代器
生成器都是迭代器
調用一個生成器函數,返回的是一個迭代器對象。
list、tuple、dict等對象雖然是可迭代的(Iterable),但卻並不是迭代器(Iterator)