On Tuesday 26 April 2011 22:19:08 Gnarlodious wrote: > On Apr 25, 10:59 pm, Steven D'Aprano wrote: > > In Python 3, map becomes lazy and returns an iterator > > instead of a list, so you have to wrap it in a call to > > list(). > > Ah, thanks for that tip. Also works for outputting a tuple: > list_of_tuples=[('0A',), ('1B',), ('2C',), ('3D',)] > > #WRONG: > (x for (x,) in list_of_tuples) > <generator object <genexpr> at 0x1081ee0> > > #RIGHT: > tuple(x for (x,) in list_of_tuples) > > Thanks everyone for the abundant help. > > -- Gnarlie
I think you already have the following: >>> t = [('0A',), ('1B',), ('2C',), ('3D',)] >>> ls = [v[0] for v in t] >>> ls ['0A', '1B', '2C', '3D'] >>> I would prefer that to using a ready made module, as it would be quicker than learning about the module, OTH, learning about a module may be useful for other problems. A standard dilema... The above quote of code is in Idle3, running Python 3.1. OldAl. -- Algis http://akabaila.pcug.org.au/StructuralAnalysis.pdf -- http://mail.python.org/mailman/listinfo/python-list