[Python-Dev] listcomps vs. for loops

Guido van Rossum guido at python.org
Wed Oct 22 13:47:42 EDT 2003


> How about an until keyword in generator expressions:

New keywords are not on the table for generator expressions. You
could do this with 'while' (which is just 'until not' -- note that
your example uses that :-) but I'd be against making this part of the
syntax more complex. You can do that with itertools.takewhile or
dropwhile anyway.
> And we could have accumulators first() and last():
>> def first(it):
> 	return it.next()

This begs for using a plain old loop statement with a 'break'.
> def last(it):
> 	for value in it:
> 		pass
> 	return value

What if it is empty?
> first(line for line in file if line.startswith("#"))
>> if not last(file):
> 	# last line not terminated

The comment is incorrect.
--Guido van Rossum (home page: http://www.python.org/~guido/)


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /