[pyar] unzip
fisa
fisadev en gmail.com
Jue Mar 7 13:36:59 ART 2013
no lo probé para todos los casos, pero zip mismo creo que te sirve, no?
a = (1, 2, 3)
b = ('a', 'b', 'c')
zip(*zip(a, b)) = [a, b]
El día 7 de marzo de 2013 13:33, Facundo Batista
<facundobatista en gmail.com> escribió:
> ¿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
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
--
fisa - Juan Pedro Fisanotti
More information about the pyar
mailing list