zip

Nombre completo
zip
Librería
Built-in
Sintaxis

zip(*iterables)

Descripción

La función zip devuelve un iterador de tuplas, en el que la tupla i-ésima está formada por los elementos que ocupan dicha posición en los iteradores cedidos como argumentos. El iterador para cuando se han procesado todos los elementos del iterador más corto.

Si no se incluyen argumentos, la función devuelve un iterador vacío. Si se añade como argumento un único iterador, se devuelve un iterador de tuplas de un elemento.

Se garantiza el orden de los iteradores en el resultado.

La función zip usada en conjunto con el operador * puede ser usada para extraer los iteradores originales a partir del iterador devuelto por zip (véase ejemplo más adelante).

Parámetros
  • iterables : iteradores a combinar.
Resultado

La función zip devuelve un iterador.

Ejemplos

Usada sin argumentos, la función zip devuelve un iterador vacío:

i = zip()
print(type(i))
print(i)

Función zip. Ejemplo de uso

 

Si el argumento es una única lista, la función devuelve un iterador formado por tuplas de un elemento:

i = zip([1, 2, 3])
list(i)

Función zip. Ejemplo de uso

 

Usada con dos iteradores como argumentos, devuelve un iterador formado por tuplas de uno y otro iterador de entrada:

num = [1, 2, 3]
es = ["uno", "dos", "tres"]
i = zip(num, es)
list(i)

Función zip. Ejemplo de uso

 

Pueden usarse más de dos iteradores como argumentos:

num = [1, 2, 3]
es = ["uno", "dos", "tres"]
en = ["one", "two", "three"]
i = zip(num, es, en)
list(i)

Función zip. Ejemplo de uso

 

Es posible recuperar los iteradores originales con formato de tuplas usando zip(*iterador):

num = [1, 2, 3]
es = ["uno", "dos", "tres"]
en = ["one", "two", "three"]
i = zip(num, es, en)

n1, n2, n3 = zip(*i)
print(n1, n2, n3)

Función zip. Ejemplo de uso

 

Si los iteradores de entrada tienen diferente longitud, la función se para cuando se han procesado los elementos del iterador de entrada más corto:

num = [1, 2, 3]
es = ["uno", "dos", "tres", "cuatro", "cinco"]
en = ["one", "two", "three", "four"]
i = zip(num, es, en)
list(i)

Función zip. Ejemplo de uso

 

Enviado por admin el Lun, 21/01/2019 - 20:44