Converting a tuple to a list

Carl Banks pavlovevidence at gmail.com
Wed Apr 9 03:16:13 EDT 2008


On Apr 8, 6:46 pm, "Gabriel Ibanez" <mob... at ibinsa.com> 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 :)


A list comp is straightforwardly equivalent to nested for loops.  To
read, it may be easeier to write it out as loops:

l = []
for z in t:
    for x in z:
        l.append(x)

Which, you'll note, it the same as your working code only with
different names.


Carl Banks



More information about the Python-list mailing list