Como Remover um Elemento de uma Lista pelo Índice em Python

Avatar de Luiza Cherobini Pereira Luiza Cherobini Pereira
3 minutos de leitura 3 meses atrás

Ao trabalhar com listas em Python, você pode precisar remover um elemento pelo seu índice. Enquanto list.remove() pode deletar um item pelo valor, essa não é a maneira mais eficiente se você já sabe a posição do elemento que deseja remover. Neste post, vamos explorar os métodos mais eficientes para remover um elemento de uma lista pelo índice.

Usando del para Remover um Elemento

A instrução del é uma ferramenta poderosa em Python que pode ser usada para deletar um elemento de uma lista especificando seu índice. Veja como você pode usá-la:

a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
del a[3]  # Remove o elemento no índice 3
print(a)  # Saída: [0, 1, 2, 4, 5, 6, 7, 8, 9]
Testar

Você também pode usar del para remover fatias de uma lista:

del a[2:5]  # Remove os elementos do índice 2 até, mas não incluindo, o índice 5
print(a)  # Saída: [0, 1, 5, 6, 7, 8, 9]
Testar

Usando pop() para Remover e Retornar um Elemento

O método pop() não apenas remove um elemento de uma lista, mas também retorna o valor do elemento removido. Isso é útil quando você precisa usar o elemento depois de removê-lo da lista.

a = ['a', 'b', 'c', 'd']
elemento_removido = a.pop(1)  # Remove e retorna o elemento no índice 1
print(elemento_removido)  # Saída: 'b'
print(a)  # Saída: ['a', 'c', 'd']
Testar

Se você não especificar um índice, pop() removerá e retornará o último item da lista:

ultimo_elemento = a.pop()
print(ultimo_elemento)  # Saída: 'd'
print(a)  # Saída: ['a', 'b', 'c']
Testar

Usando Fatiamento para Remover um Elemento

Embora não seja tão eficiente quanto del ou pop(), o fatiamento pode ser usado para remover um elemento de uma lista criando uma nova lista sem o elemento indesejado. Este método não é recomendado para listas grandes ou aplicações onde o desempenho é crítico.

a = [1, 2, 3, 4, 5, 6]
indice = 3
a = a[:indice] + a[indice+1 :]
print(a)  # Saída: [1, 2, 3, 5, 6]
Testar

Lembre-se, o fatiamento cria uma nova lista e não modifica a lista original no local.

Comparação de Eficiência

Quando se trata de eficiência, del é o método mais eficiente para remover um elemento pelo índice. Ele trabalha diretamente com a lista e não retorna o elemento removido. O método pop() é um pouco menos eficiente porque retorna o elemento removido, o que pode ser útil em alguns casos. O fatiamento é o método menos eficiente e deve ser usado com cautela, especialmente com listas grandes.

Em resumo, para remover um elemento de uma lista pelo índice em Python, você pode usar:

  • a instrução del para a remoção mais eficiente
  • o método pop() se você precisar do elemento removido
  • fatiamento se você estiver lidando com objetos que não suportam pop() ou del.

Lembre-se de que del e pop() modificam a lista no local, enquanto o fatiamento cria uma nova lista. Escolha o método que melhor atenda às suas necessidades e requisitos de desempenho.

Curso Gratuito

Curso gratuito de Python

Do zero ao primeiro projeto em apenas 2 horas

Criar conta gratuita

Comentários

Comentar
Você tem o Acesso Básico.
Libere seu acesso ao suporte dos professores Garanta seu acesso PRO para tirar todas suas dúvidas com nossa equipe.
Seja PRO