Compreensão da lista Python com exemplos [2022]
Publicados: 2021-06-29As sequências podem ser construídas de forma concisa ou curta a partir de sequências já definidas através do uso de compreensões em python. As sequências incluem estruturas de dados como lista, dicionário, conjunto, etc. As seguintes compreensões são suportadas em python:
- Listar Compreensão
- Compreensão do dicionário
- Definir Compreensão
- Compreensão do Gerador
Este artigo se concentrará nas compreensões de lista em python e seus usos. Como o conjunto de compreensão da lista e as compreensões do dicionário em python também podem ser criadas.
Índice
O que é Compreensão de Lista?
Python é uma linguagem de programação amplamente aceita que fornece ao usuário a capacidade de escrever código fácil e elegante. A compreensão da lista é uma característica distintiva do python que é usada para criar novas listas. Através do uso de uma única linha de código, a funcionalidade pode ser criada.
Não é necessário que uma condição if esteja contida em uma compreensão de lista, no entanto, várias formas podem estar contidas na compreensão de lista.
Portanto, compreensões de lista
- É uma forma elegante de definir e criar uma lista baseada em listas existentes.
- Em comparação com as funções normais de criação de listas e loops, as compreensões de lista são muito mais compactas e rápidas.
- Para que o código seja mais amigável, a escrita de listas longas deve ser evitada.
- Ao usar um loop for, as compreensões de lista podem ser reescritas.
Como criar lista?
Existem várias maneiras de criar listas na linguagem de programação python.
1. para laços
For loop pode ser usado para criar uma lista. Três etapas devem ser seguidas para criar a lista de elementos.
- Uma lista vazia deve ser instanciada.
- O loop é usado sobre elementos que podem ser iterados.
- Cada elemento é anexado ao final da lista .
2. Objetos map()
Uma abordagem alternativa, ou seja, map() é baseada em programação funcional. Um objeto é criado quando uma função e um elemento iterável são passados para map(). A saída que seria gerada a partir da execução do elemento iterável por meio da função fornecida estará contida no objeto.
3. Liste compreensões
Outra maneira de fazer uma lista é através do uso de compreensão de lista. O loop for pode ser reescrito em um código que consiste em apenas uma única linha.
Comparado com os métodos anteriores em que uma lista vazia é criada primeiro e depois a adição dos elementos no final, neste caso, isso simplesmente acontece em apenas uma única linha. A lista e o conteúdo são simplesmente definidos ao mesmo tempo. O código usado é.
Existem três elementos em cada compreensão de lista python .
- Expressão: Sendo um membro, expressão é uma chamada de método ou qualquer expressão onde um valor é retornado.
- Member: É um valor ou um objeto na lista iterável. O valor de um membro é 1 no exemplo acima.
- Iterável: é uma lista, sequência, conjunto ou outros objetos cujos elementos podem ser retornados um de cada vez. Iterable é range(10) no exemplo acima.
A compreensão de lista do Python pode funcionar bem mesmo em lugares que usam map(). O exemplo acima pode ser reescrito como.
A diferença em usar um map() e uma compreensão de lista é que uma lista é retornada no caso de compreensão de lista enquanto um objeto de mapa é retornado no caso de map().
Declarações condicionais
As listas existentes podem ser modificadas através do uso de declarações condicionais nas compreensões de listas. Tanto lista quanto tuplas, ambas podem ser modificadas por meio de compreensões de lista python.
1. Usando a condição de se
A condição de 'if' pode ser usada na compreensão da lista através do código a seguir.
A execução do programa acima gera a saída: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
2. Usando a condição de IF aninhado
A compreensão da lista faz as seguintes verificações:
- O elemento y é divisível por 2 ou 5?
- Se ambas as condições forem satisfeitas por y, ele será anexado a num_list.
Leia também: Aplicativos Python fascinantes no mundo real
3. Usando if-else
No exemplo mostrado acima, os dez números, ou seja, de 0 a 10 são verificados por compreensões de lista.
4. Uso de loops aninhados
Saída gerada: [[1, 4], [2, 5], [3, 6], [4, 8]]
A transposição da matriz é calculada através do uso de dois laços.
- Comparados aos loops aninhados normais, os loops aninhados contidos nas compreensões de lista funcionam de maneira diferente dos outros loops aninhados.
Sintaxe
A sintaxe básica para a compreensão da lista python é
[expressão para item na lista]
Suponha que temos uma string e queremos iterá-la através do uso de compreensão de lista.
No exemplo acima, pode-se notar que o 'humano' é usado como uma string e não como uma lista. Aqui reside o poder das compreensões da lista python . Seja uma string ou uma tupla, a compreensão da lista pode identificá-la e trabalhar sobre ela como uma lista.
A mesma coisa pode ser realizada usando os loops. Mas, a sintaxe de compreensão de lista não pode ser seguida pelos loops.
Conclusão
Neste artigo, você aprendeu brevemente sobre as compreensões de lista em python e sua criação de várias maneiras. Com o conhecimento dessa compreensão, outros códigos podem ser experimentados para suas tarefas. O conceito de python está recebendo muita atenção, mas será mais valioso se você puder usar seus dados de maneira eficaz. Isso pode ser feito escrevendo códigos claros e concisos.
Portanto, se você está disposto a aprender sobre python e sua implementação em mineração de dados, você pode conferir o curso Executive PG Program in Data Science oferecido pelo upGrad. O curso de 12 meses foi desenvolvido para profissionais iniciantes (homens e mulheres) entre 21 e 45 anos de idade e é o primeiro PGP certificado pela NASSCOM da Índia. Com mais de 400 horas de aprendizado e experiência prática em mais de 14 ferramentas e idiomas, o curso foi desenvolvido especialmente para atender aos seus sonhos. Dúvidas relacionadas ao curso são bem-vindas.
A lista Python é considerada a melhor estrutura de dados para armazenar os dados nos seguintes cenários: A compreensão de lista oferece várias vantagens significativas sobre o loop. Abaixo estão alguns dos prós das compreensões de lista: Uma lista Python pode ser criada de várias maneiras mencionadas abaixo:Quando uma lista Python é preferida para armazenar dados?
1. Uma lista pode ser usada para armazenar vários valores com diferentes tipos de dados e pode ser acessada apenas pelos seus respectivos índices.
2. Quando você precisa realizar operações matemáticas sobre os elementos, uma lista pode ser usada, pois permite operar matematicamente os elementos diretamente.
3. Como uma lista pode ser redimensionada, ela pode ser usada para armazenar os dados quando você não tiver certeza sobre o número de elementos a serem armazenados.
4. Os elementos da lista são facilmente mutáveis e também podem armazenar elementos duplicados, ao contrário de set e dicionário. Quais são as vantagens da compreensão de lista sobre o loop?
1. A compreensão da lista é muito mais rápida e compacta do que o loop, pois coleta todos os elementos primeiro e os insere todos juntos de uma só vez.
2. A mesma coisa que um loop faz em um bloco pode ser feito em uma única linha usando uma compreensão de lista, tornando o código mais limpo e fácil de usar.
3. A resolução de uma matriz em um vetor e filtragem de lista são alguns dos melhores exemplos em que as compreensões de lista podem ser vistas superando um loop. Indique as diferentes maneiras de criar uma lista?
1. Usando loops for : Um loop for é a maneira mais elementar de criar uma lista. Uma lista pode ser criada usando um loop for de três maneiras simples:
uma. Crie uma lista vazia.
b. Iterar sobre todos os elementos que devem ser inseridos.
c. Anexe cada elemento na lista usando a função append().
2. Usando map(): A função map() em Python pode ser usada alternativamente para criar uma lista. Esta função aceita dois parâmetros:
uma. Função : A função para a qual o mapa passa cada iterável.
b. Iterável: O elemento ou o iterável a ser mapeado.
3. Usando compreensões de lista : Este método é o mais otimizado de todos os três métodos. Enquanto nos métodos acima uma lista vazia deve ser criada primeiro, as compreensões de lista permitem que você insira todos os elementos em uma lista usando uma única linha.