Dominando Listas em Python: Append, Sort, Length & List Comprehensions (Guia Prático)
O que é uma Lista em Python?
Uma lista em Python é um contêiner versátil que pode conter objetos de qualquer tipo — inteiros, strings, floats ou até outras listas. É denotada por colchetes [], distinguindo-a de tuplas, que usam parênteses (). Diferente de tuplas, listas são mutáveis: você pode adicionar, remover ou alterar elementos após a criação.
Neste guia você aprenderá:
- Entendendo listas em Python
- Exemplos de listas homogêneas e heterogêneas
- Acessando, fatiando e atualizando elementos
- Deletando e anexando itens
- Métodos embutidos de lista
- Loops e comprehensions para código eficiente
- Ordenando e invertendo listas
Exemplos de Listas em Python
Listas podem ser homogêneas (todos elementos do mesmo tipo) ou heterogêneas (tipos mistos). Aqui estão exemplos claros:
# Listas homogêneas int_list = [1, 2, 3, 8, 33] animal_list = ['dog', 'cat', 'goat'] name_list = ['John', 'Travis', 'Sheila'] float_list = [2.2, 4.5, 9.8, 10.4] # Listas heterogêneas mixed_list_1 = [2, 'cat', 34.33, 'Travis'] mixed_list_2 = [2.22, 33, 'pen']
Acessando Valores em Listas
Listas em Python são indexadas baseadas em zero. O índice negativo -1 refere-se ao último elemento.
items = [3, 22, 30, 5.3, 20] print(items[0]) # 3 print(items[1]) # 22 print(items[-1]) # 20
Fatiamento de Listas em Python
Fatiamento extrai uma sub-sequência usando sintaxe start:stop, onde stop é exclusivo.
items = [3, 22, 30, 5.3, 20] print(items[:]) # Todos os elementos print(items[1:3]) # [22, 30] print(items[:4]) # [3, 22, 30, 5.3] print(items[2:-1]) # [30, 5.3]
Atualizando Listas
Modifique um elemento atribuindo um novo valor ao seu índice.
subjects = ['physics', 'chemistry', 'mathematics'] subjects[0] = 'biology' print(subjects) # ['biology', 'chemistry', 'mathematics']
Deletando Elementos de Listas
Três abordagens comuns:
list.remove(valor)— remove a primeira ocorrência do valor.list.pop(índice)— remove e retorna o elemento no índice dado.del list[índice]— deleta o elemento no índice sem retorná-lo.
nums = [3, 5, 7, 8, 9, 20] nums.remove(3) # [5, 7, 8, 9, 20] nums.pop(2) # remove 8 # del nums[0] # deletaria 5
Anexando Elementos a Listas
O método append() adiciona um item ao final da lista.
values = [3, 5, 7, 8, 9, 20]
values.append(3.33)
values.append('cats')
print(values) # [3, 5, 7, 8, 9, 20, 3.33, 'cats']
Funções e Métodos Embutidos de Lista
len(lista)— número de elementos.max(lista),min(lista)— valores extremos.list(tupla)— converte uma tupla em lista.list.append(item)— adiciona ao final.list.pop(índice)— remove por índice.list.remove(item)— remove por valor.list.reverse()— inverte no lugar.list.index(item)— obtém índice da primeira ocorrência.sum(lista)— total de itens numéricos.list.sort()— ordena ascendente;list.sort(reverse=True)para descendente.
values = [1, 7, 9, 3, 5] values.sort() print(values) # [1, 3, 5, 7, 9] values.sort(reverse=True) print(values) # [9, 7, 5, 3, 1]
Iterando sobre Listas
Itere sobre elementos com loop for, opcionalmente modificando cada item ou construindo uma nova lista.
nums = [10, 20, 30, 40, 50, 60, 70]
# Adiciona 5 a cada elemento (nota: não modifica a lista original)
for n in nums:
print(n + 5)
# Constrói nova lista a partir de fatia
new_list = []
for n in nums[2:]:
new_list.append(n)
print(new_list) # [30, 40, 50, 60, 70]
List Comprehensions
List comprehensions oferecem sintaxe concisa para criar listas a partir de iteráveis. São mais rápidas e legíveis que loops for equivalentes.
# Quadrados dos números 1 a 9 squares = [x**2 for x in range(1, 10)] print(squares) # [1, 4, 9, 16, 25, 36, 49, 64, 81]
Resumo
- Listas em Python são coleções mutáveis e ordenadas.
- Acesse, fatie e atualize usando índices.
- Métodos embutidos simplificam tarefas comuns: append, remove, pop, sort, reverse, etc.
- List comprehensions permitem construção elegante e eficiente de listas.
- Dominar esses fundamentos cria base sólida para programação Python avançada.
python
- Dominando Tipos de Dados em Python: Guia Prático
- Dominando Operadores em Python: Guia Completo
- Dominando a Declaração Pass em Python: Guia Prático
- Dominando Argumentos de Funções em Python: Parâmetros Posicionais, Nomeados e Padrão
- Dominando Dicionários em Python: Criação, Manipulação e Técnicas Avançadas
- Dominando Iteradores em Python: Como Funcionam e Como Criar os Seus
- Closures em Python Explicados: Como Funções Aninhadas Capturam Variáveis
- Dominando datetime do Python: Guia Prático de Datas, Horários e Fusos Horários
- Calculando Médias em Python: Guia Prático
- Python list.count(): Guia Especializado com Exemplos Práticos