迭代器和生成器的理解

2017-11-26  本文已影响0人  闫阿佳

迭代器

  1. 迭代器是有一个next()方法的对象,在全部元素取出后,会引发StopIteration异常;
  2. 使用return返回结果,一般是将结果保存至列表,return 列表;
  3. 列表解析:[expr for iter_var i iterable];

生成器

  1. 延迟操作。也就是在需要的时候才产生结果,不是立即产生结果。
  2. 生成器函数:返回使用yield;
  3. 生成器表达式:使用 (expr for iter_var i iterable);

生成器的好处

  1. 延迟计算,降低内存使用;
  2. 减少代码量,增加代码可读性;

使用生成器的注意事项

  1. 生成器只能遍历一次;

参考:
如何更好地理解Python迭代器和生成器?

上一篇 下一篇

猜你喜欢

热点阅读