[Python-Dev] Re: C's for statement

Guido van Rossum guido@digicool.com
2001年1月29日 21:57:24 -0500


> > - putting arbitrary initialization code in <init>
>> Not sure what's "arbitrary", unless you mean unrelated to the 
> iteration variable.

Yes, that.
> I guess my archetype of the cute C for-loop is the idiom for 
> pointer-list traversal:
>> 	struct foo {int data; struct foo *next;} *ptr, *head; 
>> 	for (ptr = head; *ptr; ptr = ptr->next)
> 		do_something_with(ptr->data)
>> This is elegant. It separates the logic for list traversal from the
> operation on the list element.

And it rarely happens in Python, because sequences are rarely
represented as linked lists.
> Not the highest on my list of wants -- I'd sooner have ?: back. I submitted
> a patch for that once, and the discussion sort of died. Were you dead
> det against it, or should I revive this proposal?

Not dead set against something like it, but dead set against the ?:
syntax because then : becomes too overloaded for the human reader, e.g.:
 if foo ? bar : bletch : spam = eggs
If you want to revive this, I strongly suggest writing a PEP first
before posting here.
--Guido van Rossum (home page: http://www.python.org/~guido/)

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