3 de setembro de 2020 cfgventurelli
Recentemente comecei a estudar Python, e um dos recursos que mais achei interessantes foram as Comprehensions.
As comprehensions nada mais são que uma maneira sucinta de gerar novos objetos a partir de outros objetos iteráveis (listas, sets, dicts, etc). São muito utilizadas para substituir instruções for mais simples, ou funções como map e filter.
Neste artigo vou exemplificar apenas as List Comprehension, pois, além de serem as mais simples, a lógica para as demais (set, dict, etc) é a mesma, mudando apenas o tipo de dado a ser tratado.
A sintaxe mais básica de uma list comprehension é:
[expressão for item in iterável]
Exemplo:
Podemos condicionar os dados que queremos retornar com if.
[expressão for item in iterável if condição]
Exemplo:
Também podemos utilizar o else quando queremos condicionar nossos dados
[expressão se verdadeiro if condição else expressão se falso for item in iterável]
Para finalizarmos nosso post, vale ressaltar que onde temos a "expressão", podemos fazer uso de funções, mudar o tipo de dado a ser retornado, utilizar outra comprehension, enfim, as possibilidades são muitas. Mas é muito importante ter em mente que devemos sempre seguir os princípios descritos no "The Zen Of Python". Então se sua comprehension está ficando muito complicada e/ou complexa, talvez seja melhor fazer uso da boa e velha instrução for.
Até a próxima!