Cómo comprimir dos listas en Python

Puedes opinar sobre este contenido:
  • 0
  • 0
  • 0
  • 0

A menudo, puede estar interesado en comprimir (o «fusionar») dos listas en Python. Afortunadamente, esto es fácil de hacer usando la función zip ().

Este tutorial muestra varios ejemplos de cómo utilizar esta función en la práctica.

Ejemplo 1: comprima dos listas de igual longitud en una sola lista

La siguiente sintaxis muestra cómo comprimir dos listas de igual longitud en una lista:

#definir lista a y lista b 
a = ['a', 'b', 'c'] 
b = [1, 2, 3]

#zip las dos listas juntas en una
 lista ( zip (a, b))

[('a', 1), ('b', 2), ('c', 3)]

Ejemplo 2: comprimir dos listas de igual longitud en un diccionario

La siguiente sintaxis muestra cómo comprimir dos listas de igual longitud en un diccionario:

#definir lista de claves y lista de valores
 claves = ['a', 'b', 'c']
valores = [1, 2, 3]

#zip las dos listas juntas en un diccionario de
 diccionario ( zip (claves, valores))

{'a': 1, 'b': 2, 'c': 3}

Ejemplo 3: Zip dos listas de longitud desigual

Si sus dos listas tienen una longitud desigual, zip () se truncará a la longitud de la lista más corta:

#define list ay list b 
a = ['a', 'b', 'c', 'd'] 
b = [1, 2, 3]

#zip las dos listas juntas en una
 lista ( zip (a, b))

[('a', 1), ('b', 2), ('c', 3)]

Si desea evitar que zip () se trunque a la longitud de la lista más corta, puede usar la función zip_longest () de la biblioteca itertools .

De forma predeterminada, esta función completa un valor de «Ninguno» para los valores faltantes:

desde itertools importar zip_longest

#define list ay list b 
a = ['a', 'b', 'c', 'd'] 
b = [1, 2, 3]

#zip las dos listas juntas sin truncar a la longitud de la lista más corta
 ( zip_longest (a, b))

[('a', 1), ('b', 2), ('c', 3), ('d', Ninguno)]

Sin embargo, puede usar el argumento fillvalue para especificar un valor de relleno diferente para usar:

#define list ay list b 
a = ['a', 'b', 'c', 'd'] 
b = [1, 2, 3]

#zip las dos listas juntas, usando el valor de relleno de la
 lista '0' ( zip_longest (a, b, fillvalue = 0 ))

[('a', 1), ('b', 2), ('c', 3), ('d', 0)]

Puede encontrar la documentación completa para la función zip_longest () aquí .

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

A menudo, es posible que desee crear dos parcelas una al lado de la otra usando el paquete ggplot2 en…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!