Martin Blais wrote: > On 9/2/05, Phillip J. Eby <[EMAIL PROTECTED]> wrote: > >>At 11:02 AM 9/3/2005 +1000, Nick Coghlan wrote: >> >>>Printing the items in a sequence also becomes straightforward: >>> >>>print " ".join(map(str, range(10))) => output(*range(10)) >>> >>>Playing well with generator expressions comes for free, too: >>> >>>print " ".join(str(x*x) for x in range(10)) >>> => output(*(x*x for x in range(10))) >> >>An implementation issue: that generator expression will get expanded into a >>tuple, so you shouldn't use that for outputting large sequences. > > > Then how about:: > > output(*(x*x for x in range(10)), iter=1) > Illegal in python2.4.(Wrongly ?) And makes the star solution half unuseful.
>>> def f(*args,**kwargs): ... pass ... >>> f(*(1,2,3),iter=True) File "<stdin>", line 1 f(*(1,2,3),iter=True) Leaving out what I just asserted in the previous thread :( I suppose you meant output((x*x for x in range(10)), iter=1) f(1,[2,3],(_ for _ in (4,5)),iter=True) Regards Paolino _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com