迭代器的性能优势?

问题描述

实际上在python邮件列表上有一封很好的邮件Iterators vs Lists。这有点过时(从2003年开始),但是据我所知,它仍然有效。

总结如下:

对于小型数据集,基于迭代器和列表的方法具有相似的性能。对于较大的数据集,迭代器可以节省时间和空间。

我从中得出的是:如果可能的话,迭代器比将数据加载到列表中更可取。但是,除非您有一个庞大的数据集,否则请不要扭曲您的代码以使某些内容适合列表以与迭代器一起使用。

解决方法

使用迭代器可以提供什么(如果有的话)性能优势。似乎是解决许多问题的“正确方法”,但是它会创建更快/更具有内存意识的代码吗?我在用Python专门思考,但不要仅仅局限于此。