O que é o List Comprehension no Python e Como Usá-lo

Nessa aula vamos te mostrar o que é o list comprehension no Python e como ele vai te auxiliar nos seus próximos códigos para criação de listas.

O list comprehension é uma forma compacta de criar listas em Python em uma única linha de código, no formato [expressão for item in iterável if condição]. Ele substitui o laço for tradicional — que exige várias linhas — por uma sintaxe mais rápida, legível e eficiente, ideal para transformar ou filtrar os elementos de uma lista.

Caso prefira esse conteúdo no formato de vídeo-aula, assista à aula abaixo ou acesse o nosso canal do YouTube!

O que você aprende neste vídeo

Resposta rápida: Nesta aula de Python, o instrutor mostra o que é o list comprehension: uma forma de criar uma lista inteira em uma única linha de código. Partindo de uma lista de preços, ele resolve dois casos, dobrar todos os preços e calcular 50% de imposto só nos produtos acima de US$ 1000, primeiro com o for tradicional e depois com o list comprehension, para você aprender a ler e a escrever essa sintaxe.

Neste vídeo (15 min):

  • 0:30 - O que é e para que serve: uma forma de construir uma lista em uma linha só, e por que aprender ajuda até a ler o código de outras pessoas.
  • 2:20 - Caso 1, dobrar os preços da lista pela forma tradicional: criar uma lista vazia, percorrer com for e dar append de cada preço × 2.
  • 4:40 - A mesma lista em uma linha com list comprehension: [preço*2 for preço in lista_precos], o mesmo resultado com 1 linha no lugar de 3.
  • 5:20 - Como LER a compreensão: primeiro vem o valor que entra na lista, depois o for que diz de onde vem cada item.
  • 8:40 - Caso 2, com condição: calcular 50% de imposto só nos produtos acima de US$ 1000, usando [preço*0.5 for preço in lista_precos if preço > 1000].
  • 13:20 - Quando NÃO usar: em lógicas muito complexas (vários if/else), prefira o for tradicional, o list comprehension existe para simplificar, não para complicar.

Trechos do vídeo:

  • O instrutor recomenda, para quem está começando, escrever primeiro o for tradicional (lista vazia + laço + append) e só depois convertê-lo em list comprehension, com a prática, montar direto na sintaxe curta vira algo intuitivo.
  • Ele destrincha a estrutura: primeiro vem o valor que entra na lista (preço * 2), depois o for que define cada item (for preço in lista_precos) e, por último, a condição opcional (if preço > 1000).
  • No fechamento, um alerta de boas práticas: como o Python preza pela simplicidade, em lógicas muito complexas o list comprehension atrapalha a leitura, nesses casos, o for tradicional é a melhor escolha.

Para receber a planilha que usamos na aula no seu e-mail, preencha:

Resumo

Nessa aula nós vamos te mostrar o que é o List Comprehension no Python que nada mais é do que uma forma de construir lista no Python.

Isso mesmo, uma lista criada por código em Python, ou seja, quando você tem um código em que nele mesmo vai ter a criação de outra lista com algumas informações modificadas.

Então o list comprehension é para que você saiba como construir lista no Python de uma forma mais rápida e eficiente nesses casos.

O que vamos aprender nessa aula.

O que é List Comprehension

Se você conhece o Python ou linguagem de programação já deve ter se perguntado o que é esse tal de list comprehension, certo?

Se não faz nem ideia do que se trata pode ficar tranquilo que nessa aula nós vamos te explicar o que é e como isso vai te ajudar nos seus próximos programas!

Vem comigo que vou te explicar o que é, como usar e para que serve o list comprehension!

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

List Comprehension no Python

O que é o list comprehension? Nada mais é do que uma maneira de construir listas no Python de forma mais rápida, em uma linha de código!

OBS: Lembrando que essa lista vai ser construída pelo seu código e não você escrevendo ou puxando de uma base de dados!

Para que serve o list comprehension? Na verdade, ele vai te ajudar em 2 situações.

A primeira é para que você saiba como fazer para criar uma lista de forma mais rápida e eficiente no seu código quando for gerar uma lista dentro dele.

E a segunda é para que você tenha conhecimento de como isso funciona, pois muita das vezes quando for fazer alguma busca na internet é possível que você se depare com essa maneira de construir uma lista.

Então se você souber como o list comprehension funciona você vai de cara entender o que aquele código está fazendo.

Isso é fundamental quando estamos buscando informações na internet, entender os códigos para que possamos replicar ou pegar parte desse código para a nossa aplicação.

Vamos ao exemplo prático para te mostrar a diferença entre a utilização de uma estrutura de repetição para a criação de uma lista para a utilização do list comprehension.

OBS: Lembrando que para esse exemplo nós vamos utilizar o Jupyter, caso não tenha instalado ou queira instalar basta clicar aqui que temos um post com o passo a passo da instalação.

Aqui é possível observar como usar o list comprehension e como ele facilitar o seu código.

Veja na prática a diferença entre criar uma lista com o for tradicional e com o list comprehension:

Python
# Forma tradicional, com laço for
precos = [100, 200, 300, 1500]
dobro = []
for preco in precos:
    dobro.append(preco * 2)

# A mesma lógica com list comprehension (uma linha)
dobro = [preco * 2 for preco in precos]

# Com condição: divide por 2 apenas os preços acima de 1000
imposto = [preco / 2 for preco in precos if preco > 1000]
Diferença de um FOR "comum" para o List Comprehension
Diferença de um FOR "comum" para o List Comprehension

Veja que utilizando o for “normal”, digamos assim, teríamos 4 linhas de código mais uma linha para imprimir o resultado.

Já com o list comprehension nós conseguimos juntar todas essas informações em uma única linha.

Então já temos a variável e vamos igualar ela a fórmula, no entanto veja que já temos essa fórmula dentro de colchetes [ ], que já indicam que isso é uma lista.

Em seguida temos a variável que vamos trabalhar, igual temos dentro do for, e em seguida temos o que será feito com a variável com o próprio for.

Isso quer dizer que no caso 1 vamos pegar o preço da lista de preços e vamos multiplicar por 2 e vamos repetir esse procedimento para todos os preços dessa lista.

Então automaticamente você vai ter o preço 1 multiplicado por 2, o preço 2 multiplicado por 2, e assim por diante até fazer o procedimento em toda a lista.

O caso 2 é exatamente o mesmo, só que nesse caso estamos fazendo uma divisão com essa variável.

Então é como se colocássemos o que vamos fazer e em seguida explicássemos ao código o que é aquela variável.

Nestes casos ela nada mais é do que uma lista, ou seja, estamos fazendo uma divisão por 2 dos produtos que tem valor acima de 1.000.

Pense dessa forma: imposto2 = [variável / 2]

Em seguida é como se tivesse uma descrição do que é essa variável e de como ela se comporta.

Nesse caso é um preço da nossa lista, mas vai indo de item por item da lista e vai aplicando o que está no nosso for.

Então vamos passar por todos os itens da lista e se o preço for maior do que 1.000 vamos fazer essa divisão.

A princípio pode parecer um pouco confuso, mas a medida em que for praticando e observando outros exemplos vai ficando mais claro como isso funciona e como isso pode te ajudar, não só a construir códigos como a entender outros códigos que utilizem esse mesmo procedimento!

Conclusão

Nessa aula nós te explicamos o que é e como funciona o List Comprehension para te auxiliar na construção de listas que são feitas a partir de códigos.

Claro que é um aprendizado novo se você está começando agora e pode ser um pouco difícil de entender logo de cara.

Mas basta praticar que logo já vai utilizar nos seus códigos e vai conseguir entender outros códigos que estejam utilizando também esse método.

Perguntas frequentes sobre list comprehension no Python

1. O que é list comprehension em Python?

List comprehension é uma maneira de criar listas em Python em uma única linha, percorrendo um iterável (como outra lista) e aplicando uma expressão a cada item. Substitui o laço for tradicional por uma sintaxe mais curta e legível, muito usada para transformar ou filtrar dados.

2. Qual é a sintaxe do list comprehension?

A sintaxe é [expressão for item in iterável if condição]. A expressão define o que será guardado em cada posição, o for percorre os itens e o if (opcional) filtra quais entram na lista. Exemplo: [n * 2 for n in numeros if n > 10].

3. Quando usar list comprehension em vez do for?

Use list comprehension quando o objetivo for criar uma nova lista a partir de outra, transformando ou filtrando os itens. Para lógicas longas, com vários passos ou efeitos colaterais, o for tradicional continua mais legível. A dica é priorizar a clareza do código.

4. List comprehension é mais rápido que o for?

Na maioria dos casos, sim. Por ser otimizado internamente pelo Python, o list comprehension costuma ser um pouco mais rápido que o for equivalente para montar listas, além de gerar um código mais enxuto. A diferença é mais perceptível em listas grandes.

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?