list slice and generators
Peter Otten
__peter__ at web.de
Wed Nov 25 13:26:57 EST 2015
Ian Kelly wrote:
> On Wed, Nov 25, 2015 at 10:44 AM, Ian Kelly <ian.g.kelly at gmail.com> wrote:
>> On Wed, Nov 25, 2015 at 3:07 AM, Peter Otten <__peter__ at web.de> wrote:
>>>> elif name in METRICS_AVG:
>>> # writing a function that calculates the average without
>>> # materialising the list left as an exercise ;)
>>
>> metrics = itertools.tee(metrics)
>> return int(sum(metrics[0]) / len(metrics[1]))
>
> Actually, don't do that. It does effectively materialize the list,
> just not as a list.
Not just that, it will also complain
>>> a, b = itertools.tee([1,2,3])
>>> sum(a), len(b)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: object of type 'itertools._tee' has no len()
More information about the Python-list
mailing list