当比较Python生成器和List的使用以获得更好的性能/优化时,我看到生成器的创建比列表更快,但是迭代列表比生成器更快。但我编写了一个例子来测试它的小样本和大样本数据,它与另一个自相矛盾。当我测试迭代生成器的速度和使用1_000_000_000进行列表时,实际的生成器将有50万个数字。我看到了生成器迭代比列表更快的结果
my_generator = (i for i in ra
最近我读了很多关于迭代器和生成器的文章,从我所读到/看到的情况来看,生成器似乎是生成迭代器的一种语法糖。但是,在一些代码示例中,我还看到这些生成器的返回值被用作可迭代。3for (const n of it) {}
我假设在for...of循环中,of后面的对象是可迭代的因此,对于返回类型是迭代器还是可迭代类型,我感到有点困惑
我知道生成器比迭代器更快。我还理解可以使用for循环语法实现生成器。time.time() - startTmyIter took 0.09234782因为这使用了for循环语法,所以我不明白它比迭代器更快这个生成器使用迭代器,因为"for“循环是使用迭代器实现的。如果你给这些时间计时的话,发电机就会一直跑得更快。为什么,当生成器使用迭代器时?