Search
Close this search box.
Compreensão de lista em Python
compreensão de lista em Python

Posts Relacionados:

A compreensão de lista em Python é uma forma concisa de criar uma nova lista aplicando uma expressão a cada elemento de uma lista ou iterável existente.

Receba nossa newsletter

Compreensão de lista em Python

compreensão de lista Python

A compreensão de lista em Python é uma forma concisa de criar uma nova lista. Ela funciona aplicando uma expressão a cada elemento de uma lista ou iterável existente para criar a lista nova sem precisar usar loops escritos na forma tradicional. Em outras palavras, a compreensão de lista oferece uma sintaxe enxuta para criar uma lista a partir dos valores de uma lista existente ou outro iterável como outra lista, tupla, string, dicionário ou set.

A sintaxe básica é:

nova_lista = [ expressão for item in iterável]

onde a expressão é aplicada a cada item no iterável para produzir a nova lista. Veja uma comparação entre a criação de uma lista com um for loop tradicional e com compreensão de lista abaixo.

				
					# Exemplo: cria uma lista com um for loop tradicional
minha_lista = []
for i in range(10): 
    minha_lista.append(i) 
print(minha_lista)
# resultado: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# Exemplo com compreensão de lista: cria a mesma lista mostrada acima
minha_outra_lista = [i for i in range(10)]
print(minha_outra_lista)
# resultado: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
				
			

Compreensão de lista em Python com condicionais

A compreensão de lista também pode incluir instruções condicionais. Para esses casos, a sintaxe é definida como:

[ expressão for item in iterável if condição].

				
					# Exemplo de compreensão de lista com condicional
nomes = ['Aline', 'Bianca', 'Alice', 'Beatriz', 'Carla', 'Daniela', 'Ana Flor']
# cria nova lista apenas com nomes que não iniciam com a letra A
nova_lista = [i for i in nomes if i[0] != 'A']
print(nova_lista)
# resultado: ['Bianca', 'Beatriz', 'Carla', 'Daniela']
				
			

Apenas com uma condição, como mostrado acima, a compreensão de lista cria uma nova lista atuando como um filtro. No entanto, condicionais podem ser aplicados com compreensão de lista para criar computações mais complexas. No exemplo abaixo, a compreensão de lista foi combinada com if else. Nesse tipo de caso, a sintaxe muda para:

 [if condição expressão1 else expressão2 for item in iterável].

				
					# Exemplo de compreensão de lista com condicional com if else
precos = [110, 120, 160, 270, 200, 190, 230]

# cria nova lista com preços aumentados em 10% quando eles
# são menores ou iguais a 150. Para valores maiores
# os itens são inseridos sem modificações
nova_lista = [i + 0.1*i if i <= 150 else i for i in precos]
print(nova_lista)
# resultado: [121.0, 132.0, 160, 270, 200, 190, 230]
				
			

Compreensão de lista também pode incluir loops aninhados, permitindo que você crie estruturas de dados complexas, como matrizes. Mas é muito importante considerar o balanço entre concisão no código e legibilidade. Compreensão de lista com condicionais e loops aninhados complexamente tornam os códigos de difícil compreensão e devem ser evitados. Portanto, embora a compreensão de listas torne o código mais conciso, é importante equilibrar a legibilidade e a capacidade de manutenção, especialmente para expressões muito longas ou complexas.

Encontrou algum erro ou quer fazer uma sugestão? Por favor, entre em contato usando nosso formulário de contatos.

Imagem com IA Generativa – Dia 274

IA generativa img 274

Arte com IA generativa: imagem do dia

Todos os dias, postamos um exemplo de imagem artística gerada com inteligência artificial.

Tutoriais

Postagens Mais Recentes

Outras Postagens Que Podem Interessar

Veja
Mais

Fique em contato

Se inscreva para receber nossa newsletter com novidades.

aprendiz artificial