Aplanar una lista

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En Python, una lista puede contener otras listas como elementos. Esto se conoce como una lista anidada. A veces, es posible que necesitemos aplanar una lista anidada en una sola lista. En este desafío, se te pedirá escribir una función que aplane una lista de listas una vez.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/DataStructuresGroup(["Data Structures"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python/BasicConceptsGroup -.-> python/comments("Comments") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/ControlFlowGroup -.-> python/list_comprehensions("List Comprehensions") python/DataStructuresGroup -.-> python/lists("Lists") python/DataStructuresGroup -.-> python/tuples("Tuples") python/FunctionsGroup -.-> python/function_definition("Function Definition") subgraph Lab Skills python/comments -.-> lab-13641{{"Aplanar una lista"}} python/for_loops -.-> lab-13641{{"Aplanar una lista"}} python/list_comprehensions -.-> lab-13641{{"Aplanar una lista"}} python/lists -.-> lab-13641{{"Aplanar una lista"}} python/tuples -.-> lab-13641{{"Aplanar una lista"}} python/function_definition -.-> lab-13641{{"Aplanar una lista"}} end

Aplanar una lista

Escribe una función de Python llamada flatten(lst) que tome una lista de listas como argumento y devuelva una lista aplanada. La función solo debe aplanar la lista una vez, lo que significa que cualquier lista anidada dentro de la lista original debe ser aplanada, pero cualquier lista anidada dentro de esas listas anidadas debe permanecer intacta.

Para resolver este problema, puedes usar una comprensión de lista para extraer cada valor de las sub-listas en orden.

def flatten(lst):
  return [x for y in lst for x in y]
flatten([[1, 2, 3, 4], [5, 6, 7, 8]]) ## [1, 2, 3, 4, 5, 6, 7, 8]

Resumen

En este desafío, aprendiste cómo escribir una función de Python para aplanar una lista de listas una vez. Usaste una comprensión de lista para extraer cada valor de las sub-listas en orden. Esta es una habilidad útil de tener cuando se trabaja con listas anidadas en Python.