一. 注意事項:
- python 3中取消了 xrange() 鸳玩,只保留了range函數(shù)镊叁,python 2中才有xrange函數(shù)。利用xrange制作生成器的需求佃声,現(xiàn)在可以用range加小括號() 來做偷霉。例如:
>>> a = (i for i in range(3)) # 外圍加了一個小括號迄委,加中括號就是list了
>>> print(a)
<generator object <genexpr> at 0x000002xxxxxxx>
- python 3中還修改了next()函數(shù),修改為 __next__() 类少,即前后多了雙下劃線叙身。
>>> a.__next__() # 還是上面那個a
0
>>> a.__next__()
1
>>> a.__next__()
2
>>> a.__next__()
StopIteration
二. 用法詳解
下面兩篇文章寫得很好,分別從兩個角度入手解釋了生成器硫狞,一起看應該就能看懂生成器是什么和基本用法了信轿。
文章1. https://blog.csdn.net/mieleizhi0522/article/details/82142856
文章2. https://www.liaoxuefeng.com/wiki/897692888725344/923029685138624
以上
喜歡記得點贊、關注妓忍、分享哈虏两!