List Comprehension em Python

Trabalhar com Listas em Python é algo bem interessante. Uma das vantagens disso é que, em Python, temos uma ferramenta poderosa chamada List Comprehension. Ela consiste em reduzir a quantidade de código quando você quer transformar uma lista em outra. Hã? Como assim? Vamos supor que você tenha uma lista de strings maiúsculas e com espaçamentos em cada string, mas você deseja “limpar” esta lista (removendo os espaçamentos e deixando tudo em minúsculo) e atribuir os dados limpos a outra, como você faria isso?

Talvez faríamos da seguinte forma:

mylist = [' A ', ' B ', ' C ', ' D ', ' E ']
cleanedlist = []
 
for item in mylist:
    cleanedlist.append(item.strip().lower())

Esse é um código simples para uma tarefa simples. Perfeito! Até mais galera 😉
Não, brincadeira! Esperem! Aplicando o conceito de List Comprehension tem como simplificarmos ainda mais nosso código. Dêem uma olhada no seguinte exemplo:

mylist = [' A ', ' B ', ' C ', ' D ', ' E ']
cleanedlist = [item.strip().lower() for item in mylist]

Pronto! Reduzimos a lógica de limpeza e atribuição para apenas uma linha. Fantástico, não? Agora vamos entender o que está se passando ali. Em List Comprehension lemos o código da direita para a esquerda, assim fica mais fácil de entender. Para cada item em mylist eu vou apagar os espaços em branco com o método split() e deixar a string em letra minúscula com o método lower(); após isso, vou atribuir essa nova lista para cleanedlist.

O Python é uma linguagem fantástica! Nunca deixe de explorar a fundo suas características, você não vai se arrepender 😉

Um abraço e até a próxima!

Anúncios

2 comentários sobre “List Comprehension em Python

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s