为此,设置一个for循环可能会相对昂贵,请记住,Python中的 for 循环从根本上来说是简单赋值语句的连续执行。您将执行 n个
(生成器中的项目数)分配,但此后只会丢弃分配目标。
您可以改为将生成器的长度设为零
deque;以C速度消耗,并且不像
list实现迭代器/生成器的其他可调用项那样消耗内存:
from collections import dequedef exhaust(generator): deque(generator, maxlen=0)
取自
consumeitertools配方。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)