Article image

DM

Daniel Moreira22/07/2024 15:02
Compartilhe

Manipulando Listas em Python: Dicas e Truques Essenciais

  • #Python

Introdução às Listas em Python

Listas em Python são coleções de itens que permitem armazenar múltiplos valores em uma única variável. Elas são extremamente flexíveis e podem conter dados de diferentes tipos, como números, strings e booleanos.

minha_lista = [1, 'a', 3.14, True]
print(minha_lista)  # Saída: [1, 'a', 3.14, True]

Minha_lista é uma lista contendo um número, uma string, um número decimal (float) e um valor booleano.

  print(minha_lista) exibe o conteúdo da lista.

Criação e Inicialização de Listas

Para criar uma lista, usamos colchetes [ ] e separamos os elementos por vírgulas.

minha_lista = [1, 2, 3, 4, 5]
print(minha_lista)  # Saída: [1, 2, 3, 4, 5]

Também podemos criar uma lista vazia e adicionar elementos depois.

outra_lista = []
outra_lista.append(1)
outra_lista.append(2)
print(outra_lista)  # Saída: [1, 2]

  outra_lista = [] cria uma lista vazia.
  outra_lista.append(1) adiciona o valor 1 à lista.
  outra_lista.append(2) adiciona o valor 2 à lista.
  print(outra_lista) exibe o conteúdo da lista.

Acessando e Modificando Elementos

Podemos acessar elementos de uma lista usando índices, que começam em 0.

minha_lista = [1, 'a', 3.14, True]
print(minha_lista[1])  # Saída: 'a'

Para modificar um elemento, atribuímos um novo valor ao índice desejado.

minha_lista[1] = 'b'
print(minha_lista)  # Saída: [1, 'b', 3.14, True]

  minha_lista[1] = 'b' altera o segundo elemento da lista de 'a' para 'b'.
  print(minha_lista) exibe o conteúdo atualizado da lista.

Adicionando e Removendo Elementos

Adicionamos elementos usando append() para adicionar no final e insert() para adicionar em uma posição específica.

minha_lista = [1, 2, 3]
minha_lista.append(4)
minha_lista.insert(1, 'novo item')
print(minha_lista)  # Saída: [1, 'novo item', 2, 3, 4]

Removemos elementos usando remove() para remover por valor e pop() para remover por índice.

minha_lista.remove('novo item')
minha_lista.pop(2)
print(minha_lista)  # Saída: [1, 2, 4]

  minha_lista.append(4) adiciona 4 ao final da lista.
  minha_lista.insert(1, 'novo item') insere 'novo item' na posição 1.
  minha_lista.remove('novo item') remove o primeiro 'novo item' encontrado.
  minha_lista.pop(2) remove o elemento no índice 2.

Operações Comuns com Listas

Podemos concatenar listas usando + e repetir elementos com *.

lista1 = [1, 2]
lista2 = [3, 4]
lista3 = lista1 + lista2
print(lista3)  # Saída: [1, 2, 3, 4]

Verificamos se um item está na lista com in.

print(3 in lista3)  # Saída: True

  lista3 = lista1 + lista2 combina lista1 e lista2.
  print(3 in lista3) verifica se 3 está em lista3.

Iterando Sobre Listas

Podemos iterar sobre listas com loops for e list comprehensions.

for item in lista3:
  print(item)

quadrados = [x**2 for x in range(5)]
print(quadrados)  # Saída: [0, 1, 4, 9, 16]

  for item in lista3: itera sobre cada item em lista3.
  [x**2 for x in range(5)] cria uma lista de quadrados de 0 a 4.

Ordenação e Filtragem

Ordenamos listas com sort() ou sorted(), e filtramos com list comprehensions.

lista5 = [3, 1, 4, 1, 5]
lista5.sort()
print(lista5)  # Saída: [1, 1, 3, 4, 5]
pares = [x for x in lista5 if x % 2 == 0]
print(pares)  # Saída: [4]

  lista5.sort() ordena lista5 em ordem crescente.
  [x for x in lista5 if x % 2 == 0] filtra apenas os números pares.

Copiando Listas

Copiamos listas superficialmente com copy() e profundamente com deepcopy().

lista_copia = lista5.copy()
print(lista_copia)  # Saída: [1, 1, 3, 4, 5]
import copy
lista_profunda = copy.deepcopy(lista5)
print(lista_profunda)  # Saída: [1, 1, 3, 4, 5]

  lista5.copy() cria uma cópia superficial de lista5.
  copy.deepcopy(lista5) cria uma cópia profunda de lista5.

Métodos Úteis de Listas

Métodos como count(), index(), e reverse() são extremamente úteis.

print(lista5.count(1))  # Conta quantas vezes 1 aparece
print(lista5.index(4))  # Mostra o índice do valor 4
lista5.reverse()  # Inverte a lista
print(lista5)  # Saída: [5, 4, 3, 1, 1]

  lista5.count(1) retorna o número de vezes que 1 aparece em lista5.
  lista5.index(4) retorna o índice do valor 4.
  lista5.reverse() inverte a ordem dos elementos em lista5.

Trabalhando com Listas Aninhadas

Listas dentro de listas permitem criar estruturas como matrizes.

matriz = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(matriz[1][2])  # Saída: 6

Iteramos sobre listas aninhadas facilmente.

for linha in matriz:
  for item in linha:
      print(item)

  matriz[1][2] acessa o elemento na segunda linha, terceira coluna.
  for linha in matriz: itera sobre cada linha de matriz.

Dicas de Desempenho

Use listas quando precisar de coleções mutáveis. Para buscas rápidas, considere sets ou dicts. Cuidado com a complexidade de tempo ao manipular grandes listas.

Casos de Uso Comuns

Listas são perfeitas para armazenar coleções de itens, como resultados de uma busca, dados de usuários, ou até mesmo para implementar filas e pilhas.

Conclusão

Listas são ferramentas poderosas e versáteis em Python. Curtiu o conteúdo? Ele foi gerado por inteligência artificial, mas foi revisado por alguém 100% Humano. Siga-me no Linkedin.

Fontes de produção

-Ilustrações de capa: gerada pela Microsoft Bing, Copilot

-Conteúdo gerado por: ChatGPT e revisões humanas

#Python #Estrutura de dados

Compartilhe
Comentários (0)