现在我需要10000个苹果,有两种方法可以给我
action 1:找一个游泳池那么大的盆子,装好10000个苹果给我。
action 2:找一个苹果树给我,这是一个1μs长一个苹果的苹果树,这个苹果树只需要占地1平米,我只需要等待不到一秒就有了10000个苹果。
那么第二个选择就是生成器。一般加了yield的就是生成器。
可以把生成器的作用类比为将一个列表变成一个逻辑,这样就减少了空间占用。就像考前有两种备考方法,一种是刷遍题海,扩大内存,一种是掌握葵花宝典,临场生成。
相关阅读
liaoxuefeng
generator