Una lista anidada puede ser una lista de listas o contener varios tipos de datos. Si ha creado uno a partir de varios tipos de datos más pequeños, es posible que desee aplanarlo para que los elementos sean más legibles y accesibles.
Descubra cómo convertir una lista anidada en una lista simple, con tres enfoques diferentes.
Cómo aplanar una lista de Python
Hay algunas formas de enderezar una lista anidada en Python, según su complejidad. Una lista que contiene solo listas, por ejemplo, es más fácil de aplanar que una con tipos de datos mixtos.
Verá cómo manejar cada uno de ellos en las siguientes secciones.
Cómo aplanar una lista anidada de listas con la función Sum()
Este método solo se aplica a una lista de listas de Python e implica concatenar los elementos en dicha lista anidada. No se aplica a una lista de bucles, diccionarios, conjuntos o tipos de datos mixtos porque no puede concatenar estos tipos.
Si bien puede usar el por bucle para aplanar una lista de listas, el suma() La función es sencilla y más legible ya que es un Python de una sola línea:
listaanidada = [[1, 3, 4], [2, 4], [7, 9, 0]]
listaplana = suma (lista anidada, [])
impresión(lista plana)
# Salida: [1, 3, 4, 2, 4, 7, 9, 0]
Cómo usar el bucle for para aplanar una lista anidada mixta
Puedes usar un Python para bucle para tipos de datos mixtos y homogéneos. Por lo tanto, funciona ya sea que una lista anidada contenga solo listas, tuplas, conjuntos, diccionarios o su combinación:
listaanidada = [[1, 3, 4], (1, 5, 6), {1, 2, 4}, {"mi": 3, "o":9, "t":7}]
listaplana = []para i en nestedList:
para k en i:
listaplana.adjuntar(k)impresión(lista plana)
# Salida: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'mi', 'o', 't']
También puede lograr esto con una lista de comprensión:
flatList = [k para i en nestedList para k en i]
impresión(lista plana)
# Salida: [1, 3, 4, 1, 5, 6, 1, 2, 4, 'mi', 'o', 't']
Manipule las listas de Python como desee
Una lista de Python simplifica la forma en que presenta y accede a los datos, ya que es fácil de manipular. Si bien ha visto cómo aplanar una lista anidada de Python, todavía hay muchos ajustes que puede aplicar a las listas, según su objetivo. Por ejemplo, convertir una lista de Python en un diccionario es otra tarea común que Python facilita.