Como remover um item de uma lista em Python
Aprenda como remover elementos de uma lista Python. Domine a diferença entre remove(), pop(), del e clear, com tratamento seguro de erros de índice.
Visão geral
Modificar coleções removendo itens é uma tarefa fundamental ao gerenciar filas, analisar configurações ou filtrar conjuntos de dados. Como as listas do Python são mutáveis, você pode excluir elementos no local. Python oferece vários métodos para remover itens, e escolher o caminho certo depende se você deseja excluir por valor, por índice ou limpar totalmente a lista.
Para remover um item pelo seu valor, você usa o método `.remove(value)`. Ele pesquisa a lista e exclui a *primeira* ocorrência desse valor. Se o valor não for encontrado, gera um `ValueError`. Para remover um item em um índice específico e recuperar seu valor, você usa o método `.pop(index)` (cujo padrão é o último item se nenhum índice for fornecido).
Se você deseja excluir um elemento de um índice sem manter seu valor, você pode usar a instrução `del` (por exemplo, `del my_list[index]`). Para limpar todos os itens de uma lista local, o método `.clear()` é a escolha mais eficiente. A compreensão dessas operações evita erros e problemas de vazamento de memória.
Saída de código e execução
Este script demonstra a remoção de elementos da lista por valor usando remove(), por índice usando pop() e del, e limpando o conteúdo da lista.
fruits = ["apple", "banana", "cherry", "banana", "date"]
# 1. Remove by value (deletes the first match only)
fruits.remove("banana")
print("After remove('banana'):", fruits)
# Handling ValueError safely
try:
fruits.remove("orange")
except ValueError:
print("Value 'orange' not found in list.")
# 2. Remove by index and retrieve item using pop()
popped_item = fruits.pop(1) # Removes index 1 ("cherry")
print(f"Popped: {popped_item} | List after pop:", fruits)
# 3. Delete by index without retrieving using del
del fruits[0] # Removes "apple"
print("After del index 0:", fruits)
# 4. Clear entire list in-place
fruits.clear()
print("After clear():", fruits)After remove('banana'): ['apple', 'cherry', 'banana', 'date']
Value 'orange' not found in list.
Popped: cherry | List after pop: ['apple', 'banana', 'date']
After del index 0: ['banana', 'date']
After clear(): []Implementação passo a passo
- Use list.remove(value) para procurar e excluir a primeira ocorrência de um valor específico.
- Chame list.pop(index) para remover e retornar o elemento na posição de índice especificada.
- Use a instrução del list[index] para excluir um elemento ou fatia de elementos diretamente pelo índice.
- Chame list.clear() para remover todos os elementos no local, deixando uma lista vazia com tamanho 0.
Perguntas frequentes
Qual é a diferença entre pop() e del?
pop() remove o elemento e o retorna, permitindo atribuí-lo a uma variável. del é uma instrução que exclui o item da memória sem devolvê-lo.
Como removo todas as ocorrências de um valor de uma lista?
Use uma compreensão de lista ou um loop while: list = [x for x in list if x != target_value]. Chamar remove() dentro de um loop pode pular itens se modificado incorretamente.
Tópicos Relacionados
Aprenda as maneiras mais pitônicas de verificar se uma lista está vazia em Python. Compare verificações booleanas implícitas com comparações de comprimento.
Como encontrar o comprimento de uma lista em PythonAprenda como encontrar o comprimento de uma lista em Python usando a função len(). Entenda a complexidade do tempo O(1) e as contagens de verificação.
Recursos Python recomendados
Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.
Listas Python
Aprenda tudo sobre listas Python. Descubra como criar, fatiar, modificar e iterar nativamente arrays em Python.
Folha de referências de métodos de lista Python
Guia de referência rápida para operações de lista Python. Domine a adição, inserção, remoção, classificação e fatiamento de elementos.
Python vs JavaScript: qual linguagem de programação é a melhor?
Uma comparação abrangente entre Python e JavaScript. Explore diferenças de sintaxe, desempenho, casos de uso (backend versus frontend) e exemplos de codificação.