Manipulação de Listas em Python
Por Ricardo Costa Val do Rosario e CoPilot 365
Listas: Versatilidade e Manipulação em Python
- As listas em Python oferecem flexibilidade ao possibilitar o armazenamento de elementos de tipos variados,
como strings, números, booleanos e até mesmo outras listas.
- Essa característica as torna apropriadas para situações que exigem manipulação de dados heterogêneos.
Função len(): Eficiência na Quantificação de Elementos
A aplicação da função len(lista) proporciona rapidamente o total de itens presentes na lista, eliminando
a necessidade de contagem manual.
Tal funcionalidade é particularmente útil em cenários que envolvem grandes volumes de informação.
Fatiamento (Slicing): Seleção Precisa de Subconjuntos
1 - A sintaxe lista[início:fim] permite selecionar elementos desde o índice inicial até o final - 1.
2 - Caso o início seja omitido ([:fim]), a seleção parte do primeiro elemento, enquanto se o fim
for omitido ([início:]), a seleção se estende até o último item.
3 .- Adicionalmente, são aceitos índices negativos e o parâmetro de passo (exemplo: lista[-5:-1:2]).
Inserção de Elementos: Métodos Disponíveis
1. O método append(x) adiciona um novo elemento ao término da lista, enquanto extend(iterável) insere
2. todos os itens de um iterável individualmente, ajustando o tamanho conforme necessário.
3. A escolha entre os métodos depende da inclusão de um elemento isolado ou múltiplos elementos.
Remoção e Outras Operações
1. Para eliminar a primeira ocorrência de determinado valor, utiliza-se remove(x).
2. Estão disponíveis outros métodos como pop(), insert(), clear(), sort() e reverse(),
3. Cada qual destinado a diferentes formas de manipulação das listas.
Tópicos Avançados para Profundidade Analítica
1. List comprehensions tornam viável a criação de listas derivadas por meio de sintaxe concisa.
2. Métodos como index(), count() e operadores de associação (in) estão disponíveis para busca e análise.
3. Outras estruturas de dados—tuplas, conjuntos, arrays NumPy—devem ser consideradas conforme a aplicação.
Exemplos Práticos de List Comprehensions em Python
1. Transformação de Dados
python
Geração de uma lista de quadrados dos números de 1 a 10:
quadrados = [x**2 for x in range(1, 11)]
print(quadrados)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
2. Filtragem Condicional
Extração de números pares em determinado intervalo python
pares = [x for x in range(1, 11) if x % 2 == 0]
print(pares)
[2, 4, 6, 8, 10]
3. Operações sobre Strings
Cálculo dos tamanhos de palavras em uma lista de strings: python
palavras = ["banana", "laranja", "maçã", "uva"]
tamanhos = [len(p) for p in palavras]
print(tamanhos)
[6, 7, 4, 3]
4. Compreensão Aninhada
Construção do produto cartesiano entre duas listas: python
lista1 = [1, 2, 3]
lista2 = ["a", "b", "c"]
pares = [(x, y) for x in lista1 for y in lista2]
print(pares)
[(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c')]
5. Condições Múltiplas
Seleção de valores divisíveis por 2 ou 3 dentro de um intervalo: python
div2ou3 = [x for x in range(1, 21) if x % 2 == 0 or x % 3 == 0]
print(div2ou3)
[2, 3, 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20]
Dicas Avançadas
Para atribuição condicional inline, utilize if–else:
python
indicadores = ['sim' if x > 0 else 'não' for x in [-1, 0, 5]]
['não', 'não', 'sim']
Explore compreensões de dicionários e conjuntos:
python
dic = {x: x**2 for x in range(5)}
conj = {x for x in range(5) if x % 2}
Para grandes volumes de dados, considere expressões geradoras:
python
gen = (x**2 for x in range(1_000_000))