On Wed, 2008-04-09 at 00:46 +0200, Gabriel Ibanez wrote: > Gabriel Ibanez wrote: > > Hi all .. > > > > I'm trying to using the map function to convert a tuple to a list, without > > success. > > > > I would like to have a lonely line that performs the same as loop of the > > next script: > > > > ------------------------------------------- > > # Conveting tuple -> list > > > > tupla = ((1,2), (3,4), (5,6)) > > > > print tupla > > > > lista = [] > > for a in tupla: > > for b in a: > > lista.append(b) > > print lista > > ------------------------------------------- > > > > Any idea ? > > > > Thanks ... > > > > # Gabriel > > > > list(tupla) > > would probably do it. > > regards > Steve > -- > Steve Holden +1 571 484 6266 +1 800 494 3119 > Holden Web LLC http://www.holdenweb.com/ > > > -- > http://mail.python.org/mailman/listinfo/python-list > > > > > That would just make a list of tuples, I think he wants [1, 2, 3, 4, 5, 6]. > > Try: l = [x for z in t for x in z] > > --Brian > > > --------------- > > > Thanks Steve and Brian, > > Brian: that is !! > > However, it's a bit difficult to understand now. I have read it several > times :) > >
Another solution using the itertools module: >>> import itertools >>> t = ( ( 1, 2 ), ( 3, 4 ), ( 5, 6 ) ) >>> list( itertools.chain( *t ) ) [1, 2, 3, 4, 5, 6] Though the list part is probably unnecessary for most uses. The problem gets interesting when you want to recursively flatten an iterable of arbitratrily deeply nested iterables. -- John Krukoff <[EMAIL PROTECTED]> Land Title Guarantee Company -- http://mail.python.org/mailman/listinfo/python-list