No es tan difícil como parece, se entiende mejor con un ejemplo.
#!/usr/bin/python
lista=[1,2,3,4,5,6,7,8,9];
l2=filter(lambda n : n%2==0, lista);
print l2;
l3=zip(lista,l2);
print l3;
En este caso construimos la lista "l2" usando una función lambda, esta lista contiene los números pares de "lista", es decir [2, 4, 6, 8].
Posteriormente ejecutamos zip sobre las dos listas, obtenemos [(1, 2), (2, 4), (3, 6), (4, 8)], una lista de tuplas combinando las dos listas, primero "lista" y después "l2".
En el ejemplo anterior hemos combinado dos listas, pero puede hacerse con más a la vez, si por ejemplo obtenemos una lista de nombres, y otras dos con los apellidos de una base de datos podríamos combinarlas de la siguiente forma.
#!/usr/bin/python
nombres=["Francisco", "Jose", "Fernando"];
apellidos1=["Fernandez", "Rodriguez", "Jimenez"];
apellidos2=["Jimenez", "Rodriguez", "Fernandez"];
nombresCompletos=zip(nombres, apellidos1, apellidos2);
for i in nombresCompletos:
print i;
3 comentarios:
Fíjate que buscando info de la función zip de python, me encuentro nuevamente con tu blog, como no podría ser de otra manera ;)
Un abrazo, maestro.
Muchas gracias, es antiguo pero espero que te haya servido :).
Un saludo!
Muchas Gracias por tomarte el tiempo de explicar con ejemplos ... te lo agradezco en verdad!
Publicar un comentario