> With the increased emphasis on iterators and generators in Python 3.x, > the lack of a simple expression level equivalent to "for item in > iterable: pass" is occasionally irritating, especially when > demonstrating behaviour at the interactive prompt.
I've sometimes thought that exhaust(iterator) or iterator.exhaust() would be a good thing to have - I've often wrote code doing basically "call this function for every element in this container, and idc about return values", but find myself using a list comprehension instead of generator. I guess it's such an edge case that exhaust(iterator) as builtin would be overkill (but perhaps itertools could have it ?), and most people don't pass around iterators, so (f(x) for x in y).exhaust() might not look natural to most people. It could return the value for the last() semantics, but I think exhaustion would often be more important than the last value. 2018-04-09 0:58 GMT+02:00 Greg Ewing <greg.ew...@canterbury.ac.nz>: > Kyle Lahnakoski wrote: > >> Consider Serhiy Storchaka's elegant solution, which I reformatted for >> readability >> >>> smooth_signal = [ >>> average >>> for average in [0] >>> for x in signal >>> for average in [(1-decay)*average + decay*x] >>> ] > > > "Elegant" isn't the word I would use, more like "clever". > Rather too clever, IMO -- it took me some head scratching > to figure out how it does what it does. > > And it would have taken even more head scratching, except > there's a clue as to *what* it's supposed to be doing: > the fact that it's assigned to something called > "smooth_signal" -- one of those "inaccurate names" that > you disparage so much. :-) > > -- > Greg > > _______________________________________________ > Python-ideas mailing list > Python-ideas@python.org > https://mail.python.org/mailman/listinfo/python-ideas > Code of Conduct: http://python.org/psf/codeofconduct/ _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/