for / while else doesn't make sense
ned at nedbatchelder.com
Sat Jun 4 07:37:01 EDT 2016
On Friday, June 3, 2016 at 11:43:33 PM UTC-4, Lawrence D’Oliveiro wrote:
> On Saturday, June 4, 2016 at 3:00:36 PM UTC+12, Steven D'Aprano wrote:
> > You can exit a loop because you have run out of items to process, or you can
> > exit the loop because a certain condition has been met.
> But why should they be expressed differently?
> item_iter = iter(items)
> while True :
> item = next(item_iter, None)
> if item == None :
> if is_what_i_want(item) :
> #end while
Do you actually write loops like this? If this appeared in a code
review, first we'd have a conversation about what this code was
meant to do, and then I would ask, "Why aren't you using a for loop?"
I suspect most Python programmers would be similarly confused about
why you aren't using one of the central constructs of the language.
What's next? "Why have both if and while? A goto will work for both!"
More information about the Python-list