#迭代器
#可迭代協議 ------ 含有iter方法的都是可迭代的
#迭代器協議:含有next和iter的都是迭代器
#特點:
#節省記憶體空間
#方便逐個取值,乙個迭代器只能取一次
#生成器
#生成器函式:
#含有yield關鍵字的函式都是生成器函式
#生成器的特點:
#呼叫之後函式內的**不執行,返回生成器
#每次從生成器中取值都會執行一段**,遇到yield停止
#生成器取值的方式:
#for : 如果沒有break就一直取值,直到取完為止
#next :每次只取乙個
#send :不能用在第乙個,取下乙個值得時候給上乙個位置傳乙個新的值 (用send之前,前面必須要有next取過一次值,然後才能使用send取值)
#資料的強制型別轉換 :會一次性把所取到的值全部傳到記憶體裡(佔記憶體,不建議使用)
#生成器表示式
# (條件成立想放在生成器中的值 for i in 可迭代的 if條件)
所有的生成器都是迭代器
生成器和迭代器
可以直接作用於for迴圈的物件稱為可迭代物件 iterable.可以用isinstance 判斷乙個物件是否是iterable物件。isinstance iterable true isinstance iterable true isinstance 235,iterable false 而生成器...
迭代器和生成器
1 迭代器的概念 print dir 告訴我列表的所有用法 有雙下劃線的所有方法叫做雙下方法,是c語言已經寫好的方法。你可以用不止一種方法呼叫它。列表的用法變集合 set dir 求交集 set dir set dir set dir 求列表,字典,字串它們的用法的交集 他們共同的用法 iterab...
生成器和迭代器
1.iterator 迭代器 舉例 我們對list使用for for i in 1,2,3,4 print i 12 34對string物件使用for for ch in python print ch py thon對字典物件使用for for k in print k yx對檔案使用for fo...