Achatando uma Lista

Beginner

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

Introdução

Em Python, uma lista pode conter outras listas como elementos. Isso é conhecido como uma lista aninhada (nested list). Às vezes, podemos precisar achatar uma lista aninhada em uma única lista. Neste desafio, você será solicitado a escrever uma função que achata uma lista de listas uma vez.

Achatar uma Lista (Flatten a List)

Escreva uma função Python chamada flatten(lst) que recebe uma lista de listas como argumento e retorna uma lista achatada. A função deve apenas achatar a lista uma vez, o que significa que quaisquer listas aninhadas dentro da lista original devem ser achatadas, mas quaisquer listas aninhadas dentro dessas listas aninhadas devem permanecer intactas.

Para resolver este problema, você pode usar uma compreensão de lista (list comprehension) para extrair cada valor de sub-listas em ordem.

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]

Resumo

Neste desafio, você aprendeu como escrever uma função Python para achatar uma lista de listas uma vez. Você usou uma compreensão de lista (list comprehension) para extrair cada valor de sub-listas em ordem. Esta é uma habilidade útil para ter ao trabalhar com listas aninhadas em Python.