Función zip() en Python

La función zip() en Python se utiliza para combinar dos o más iterables en un solo iterable. Crea una secuencia de tuplas donde el primer elemento en cada uno de los iterables se combina en una tupla, el segundo elemento en cada uno de los iterables se combina en otra tupla y así sucesivamente. La longitud del iterable resultante es igual a la longitud del iterable más corto que se pasa como argumento.

Página de referencia: resume la firma y el uso de un método concreto. El valor está en el patrón: qué recibe, qué devuelve y en qué situación lo usarías.

Copia el ejemplo al editor, cámbiale los argumentos y comprueba la salida.


Sintaxis de la Función zip() en Python

A continuación puedes ver la sintaxis de zip() en Python:

Ejemplo

    zip(iterable1, iterable2, ...)
  
  • iterable1 , iterable2 , … son los iterables que deseas combinar. Puedes proporcionar tantos iterables como desees, separados por comas.

Ejemplo de de zip() en Python

A continuación tienes un ejemplo de zip() en Python:

Ejemplo

    lista_combinada = list(combinado)
print(lista_combinada)
print(lista_combinada)
  

Resultado:

Ejemplo

    [('Elena', 25), ('Marcos', 30), ('Carmen', 35)]
Abrir en editor

Ejemplo de Desempaquetar elementos de las tuplas generadas por zip()

Ejemplo

    for nombre, edad in combinado:
       for nombre, edad in combinado:
          print(f'{nombre} tiene {edad} años.')
  

Resultado:

Ejemplo

    Elena tiene 28 años.
Marcos tiene 31 años.
Carmen tiene 24 años.

Ejemplo del manejo de iterables de diferentes longitudes con zip()

Si los iterables tienen longitudes diferentes, zip() se detendrá cuando el iterable más corto se agote. Los elementos adicionales en el iterable más largo se ignorarán.

Ejemplo

    for nombre, edad in combinado:
       for nombre, edad in combinado:
          print(f'{nombre} tiene {edad} años.')
  

Resultado:

Ejemplo

    zip(iterable1, iterable2, ...)

Notas adicionales

  • Puedes utilizar la función list() para convertir el objeto zip en una lista si deseas acceder a todos los elementos a la vez.
  • zip() es útil para recorrer dos o más listas en paralelo y combinar sus elementos de manera ordenada.
  • Si necesitas invertir el proceso y descombinar una lista de tuplas en múltiples listas, puedes usar el operador * para desempaquetar las tuplas.

Espero que esta lección detallada te haya ayudado a comprender cómo utilizar la función zip() en Python. Si tienes más preguntas o necesitas ejemplos adicionales, no dudes en preguntar.

Practica Función zip() en Python en el editor

Pon en práctica lo aprendido con nuestro editor Python interactivo. Cada ejercicio incluye el código de partida y un botón para abrirlo en una nueva pestaña, donde puedes modificarlo y ejecutarlo.

Ejercicio: A continuación tienes un ejemplo de

A continuación tienes un ejemplo de zip() en Python.

Ejemplo

    lista_combinada = list(combinado)
print(lista_combinada)
  
Abrir en editor

Ejercicio: A continuación tienes un ejemplo de (2)

A continuación tienes un ejemplo de zip() en Python.

Ejemplo

    [('Elena', 25), ('Marcos', 30), ('Carmen', 35)]
  
Abrir en editor

Ejercicio: Usar print()

A continuación tienes un ejemplo de zip() en Python.

Ejemplo

    for nombre, edad in combinado:
          print(f'{nombre} tiene {edad} años.')
  
Abrir en editor

Ejercicio: zip() con longitudes distintas

zip() se detiene al agotar el iterable más corto.

Ejemplo

    nombres = ["Elena", "Marcos", "Carmen"]
edades = [28, 31]
print(list(zip(nombres, edades)))
  
Abrir en editor

Cómo practicar

1. Pulsa Ejecutar en el bloque de código.
2. Modifica un valor o argumento.
3. Vuelve a ejecutar y observa la consola.