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

Hello Sanca! Hello World!

Olá! Ficamos felizes que você veio até aqui!

O opensanca é um canal onde discutiremos sobre desenvolvimento Open Source; queremos que nossos encontros sejam além de tecnologias; esperamos que eles forneçam apoio à todos em diversos segmentos e vertentes; seja parte disso e ajude a comunidade opensanca para que esta iniciativa ganhe força. Não importa se você é iniciante, ninja-samurai ou Goku das profundezas do Egeu.

Como contribuir? Nós gostaríamos de oferecer conteúdo relevante para a comunidade Open Source, por isso manteremos este blog, uma conta no github e uma newsletter semanal.
E para que todas essas coisas estejam sempre atualizadas precisamos muito da ajuda de vocês!

Como participar? Bom, caso você queira colaborar com artigos no blog apenas me passe teu email que eu irei cadastrá-lo como autor. Caso esteja inseguro sobre escrever algo por aqui você pode recolher conteúdo relevante para nossa newsletter que será disparada toda sexta-feira (ou algum outro dia da semana). Todos os códigos dos meetups e de artigos do blog deverão ser hospedados lá.

Estaremos procurando realizar vários encontros e precisaremos de palestrantes. Caso você tenha algo que queira passar para a comunidade entre em contato conosco, quem sabe você dê alguma palestra ou mini-curso em alguns de nossos encontros? 😉

Nossos canais:

  • Meetup: http://www.meetup.com/pt/opensanca/
  • Github: https://github.com/opensanca
  • Página no Facebook: https://www.facebook.com/opensanca
  • Grupo no Facebook: https://www.facebook.com/groups/398166953717267/

Junte-se a nós e ajude-nos a disseminar o Open Source em São Carlos e região. Essa experiência, sem dúvida alguma, agregará muitas coisas positivas tanto para tua vida profissional quanto pessoal.

Abraço!