Back
Close

Programação Python (Intermediário) - Prof. MARCO VAZ

MarcoVaz
103.2K views

Compreensão de Listas

Compreensão de Listas (CL) é uma funcionalidade muito poderosa da linguagem Python que possibilita criar uma lista nova aplicando uma função para cada elemento da lista original. Com a compreensão de lista é possível reduzir a expressão em um única linha, num formato semelhante a notação de conjuntos da matemática, economizando linhas de códigos. O formato geral da compreensão é: funcao

  • Um exemplo simples:
    S = { x | x ∈ N,x < 10}                                                                   em python:   S = [x for x in range(0, 10)]

    S = { x | x ∈ Z, x < 20, x é par}                                                    em python:   S = [x for x in range(0, 20) if x % 2 == 0]

    S = { x | x é uma letra na palavra 'BANANA', x é vogal}    em python:   S = [x for x in 'BANANA' if x in ['A', 'E', 'I', 'O', 'U']]

Agora execute os exemplos e veja os resultados:

A compreensão que num primeiro momento parace confusa, exige apenas exercícios. Vamos Fazer uma comparação com a estrutura for considerndo o seguinte exemplo:
S = {x | x ∈ N, x ≤ 100, x é uma raiz quadrada exata}

Escrito utilizando a estrutura FOR:

for i in range(1, 101):         #iterador
   if int(i**0.5) == i**0.5:    #filtro condicional
      print i                   #retorno

Escrito em código CL:

[ i for i in range(1, 100) if int(i**0.5) == i**0.5 ]
Create your playground on Tech.io
This playground was created on Tech.io, our hands-on, knowledge-sharing platform for developers.
Go to tech.io