[pyar] unzip

Facundo Batista facundobatista en gmail.com
Jue Mar 7 13:33:47 ART 2013


¿Cual es la forma más "pythonica" de implementar unzip, siendo unzip
lo contrario de zip?

O sea,

    unzip(zip(foo, bar)) == (foo, bar)

Una alternativa, que muestra bien lo que quiero es:

def unzip(data):
    """The opposite of zip."""
    alllists = [[] for _ in data[0]]
    for item in data:
        for i, val in enumerate(item):
            alllists[i].append(val)
    return alllists

Problemas de este código ^:

- Es largo, no vale la pena escribirlo todas las veces

- Arranca todas las listas de cero, cuando realmente ya se sabe cuanto
ocuparían.

Bueno, les dejo la inquietud

Slds.

PD1: ¿para qué lo quiero? es util para pyplot.plot()

PD2: ¿suena como para una función del módulo itertools?

-- 
.    Facundo

Blog: http://www.taniquetil.com.ar/plog/
PyAr: http://www.python.org/ar/
Twitter: @facundobatista



More information about the pyar mailing list