Compreensões de Listas
Compreensões de lista são uma das características mais poderosas e elegantes do Python. Elas permitem criar listas de forma concisa e legível em uma única linha de código. As compreensões de lista são uma alternativa eficiente aos loops tradicionais para criar, filtrar e transformar listas em Python. Neste tutorial, vamos explorar a fundo as compreensões de lista, entender sua sintaxe e aprender a utilizá-las para criar listas de maneira eficiente.
1. Compreensões de Lista Básicas:
A sintaxe básica de uma compreensão de lista é simples e direta:
nova_lista = [expressao for item in iteravel if condicao]
expressao
: A expressão que define o novo elemento na lista.item
: Variável que representa cada elemento no iterável.iteravel
: A sequência de elementos (por exemplo, lista, tupla, range) que será percorrida.condicao
: (Opcional) Uma condição para filtrar os elementos do iterável.
Exemplo 1: Criando uma Lista de Quadrados:
numeros = [1, 2, 3, 4, 5]
quadrados = [x ** 2 for x in numeros]
print(quadrados) # Saída: [1, 4, 9, 16, 25]
Neste exemplo, a compreensão de lista cria uma nova lista contendo os quadrados dos números na lista numeros
.
2. Compreensões de Lista com Condições:
Você pode adicionar uma condição para filtrar os elementos do iterável antes de adicioná-los à lista resultante.
Exemplo 2: Filtrando Números Pares:
numeros = [1, 2, 3, 4, 5]
pares = [x for x in numeros if x % 2 == 0]
print(pares) # Saída: [2, 4]
Neste exemplo, apenas os números pares são adicionados à lista resultante.
3. Compreensões de Lista com Expressões Condicionais:
As compreensões de lista também podem conter expressões condicionais para transformar elementos de forma mais complexa.
Exemplo 3: Transformando Números Pares em “Par” e Ímpares em “Ímpar”:
numeros = [1, 2, 3, 4, 5]
resultado = ["Par" if x % 2 == 0 else "Ímpar" for x in numeros]
print(resultado) # Saída: ['Ímpar', 'Par', 'Ímpar', 'Par', 'Ímpar']
Neste exemplo, a compreensão de lista usa uma expressão condicional para transformar números pares em “Par” e números ímpares em “Ímpar”.
4. Compreensões de Lista com Iteráveis Aninhados:
Você também pode usar compreensões de lista com iteráveis aninhados para criar listas mais complexas.
Exemplo 4: Criando uma Lista de Tuplas com Pares de Números:
numeros = [1, 2, 3]
pares = [(x, y) for x in numeros for y in numeros]
print(pares) # Saída: [(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)]
Neste exemplo, a compreensão de lista cria uma lista de tuplas contendo todas as combinações possíveis de pares de números.
As compreensões de lista são uma ferramenta poderosa e versátil em Python. Elas permitem que você crie listas de forma eficiente e concisa, economizando várias linhas de código em comparação com loops tradicionais. Ao compreender e dominar o uso de compreensões de lista, você poderá escrever código mais limpo, claro e eficiente em Python.