python 生成器作用,python生成式与生成器
1.处理大量数据
生成器一次返回一个结果,而不是一次返回所有结果。这对于大量数据的计算非常有用。
没有生成器,本地尝试计算机崩溃():
sum([I for I in range(10000000000000)])使用生成器,在本地尝试,需要很长时间计算,但不会导致系统崩溃:
sum(I for I in range(100000000000))2。代码更简洁。
示例:求解单词在字符串中的位置
不带发电机
def index _ words(text):results=[]if text:results . append(0)for index,letter in enumerate(text,0):if letter== :results . append(index 1)使用生成器返回结果sprint index _ words( the Zen of python )
def index _ words 2(text):if text:yield 0 for index,letter in enumerate(text,0):if letter== :yield index 1 print(list(index _ words 2( Python的禅))。发现生成器不定义结果列表变量,也不追加,直接yield,代码逻辑更清晰。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。