1
一个可以考虑的功能通过迭代器计算产量的数量?
def f(iterator):
count = 0
for _ in iterator:
count += 1
return count
def g(iterator):
return len(tuple(iterator))
我相信他们可以不同的唯一途径是g
可能会耗尽内存,同时f
没有。
假设我是对有关:
是否有快速和/或以其他方式,更好的(大概,没有成为代码高尔夫短) 的方式,同时使用更少的内存比
tuple(iterator)
占用得到f(iterator)
, 最好是内联而不是一个函数?
(如果没有为f
,g
一些其他的方式不同,那么我相信 f
是更有可能比g
正确地定义,我以后的功能。 我已经看了the itertools documentation page,和看不到任何解决方案有)