O Python tem quatro tipos nativos de coleções que irá utilizar constantemente na programação do dia a dia: lista, tupla, conjunto e dicionário. Cada um armazena grupos de valores de uma forma diferente, pelo que escolher o tipo certo pode tornar o seu código mais claro e eficiente. As listas (list) mantêm os itens em ordem e permitem alterá-los; tuplas (tuple) mantêm os itens em ordem, mas são concebidas para serem imutáveis; conjuntos (set) priorizam a unicidade; e os dicionários (dict) ligam chaves a valores para pesquisas rápidas e significativas.
Neste artigo, verá primeiro a sintaxe básica de cada tipo de coleção, juntamente com exemplos de código curtos. Depois disso, abordaremos a parte prática: quando utilizar cada um em cenários reais — como quando a ordem importa, quando precisa de unicidade ou quando pretende mapear a informação por chaves. No final, deverá ser capaz de escolher o tipo de coleção correto rapidamente e escrever código que corresponda à sua intenção.
1) Lista (list): ordenada, modificável, permite duplicados
Sintaxe:
# Criar
my_list = [1, 2, 3]
another_list = list((1, 2, 3)) # a partir de um iterável
# Adicionar/modificar
my_list.append(4)
my_list[0] = 10
Quando utilizar uma lista
Utilize uma lista quando:
-
Precisa de ordem (o acesso baseado em índice é importante).
-
Necessita de modificar a coleção (adicionar/remover/atualizar itens).
-
As duplicatas são permitidas e significativas (por exemplo, um histórico de eventos).
Exemplos de casos de uso:
-
Armazenar uma sequência de passos que irá iterar
-
Manter um inventário onde possam ocorrer duplicados
2) Tupla (tuple): ordenada, imutável, permite duplicados
Sintaxe:
# Criar
my_tuple = (1, 2, 3)
single = (42,) # note-se a vírgula para uma tupla de 1 item
# Ler (acesso baseado em índice)
x = my_tuple[0]
Quando utilizar uma tupla
Utilize uma tupla quando:
-
Deseja uma coleção ordenada.
-
Deseja que seja imutável (não deve ser alterada).
-
Os duplicados são permitidos.
-
Pretende que a intenção do código seja explícita: “estes valores não devem ser alterados”.
Exemplos de casos de uso:
-
Devolver múltiplos valores de uma função
-
Armazenar as definições fixas como coordenadas/dimensões
3) Conjunto (set): não ordenado, mutável, sem duplicados
Sintaxe:
# Criar
my_set = {1, 2, 3}
empty_set = set() # usar set() para criar um conjunto vazio
another = set([1, 2, 2, 3]) # duplicados acumulam
# Adicionar / remover
my_set.add(4)
my_set.remove(2) # KeyError se 2 não estiver presente
Quando utilizar um conjunto
Utilize um conjunto quando:
-
A ordem não importa.
-
Pretende unicidade (sem duplicados).
-
Necessita de testes rápidos de pertinência, como "este item já está presente?".
-
Pretende operações de conjunto (união/interseção/diferença).
Exemplos de casos de uso:
-
Rastrear IDs de utilizadores únicos
-
Encontrar elementos comuns entre dois grupos
4) Dicionário (dict): mapeamento chave → valor (chaves únicas)
Sintaxe:
# Criar
pessoa = {"nome": "Ada", "idade": 36}
# Acessar
nome = pessoa["nome"]
# Adicionar / atualizar
pessoa["idade"] = 37
# Iterar
for k in pessoa:
print(k)
for v in pessoa.values():
print(v)
for k, v in pessoa.items():
print(k, v)
Quando utilizar um dicionário
Utilize um dicionário quando:
-
Precisa de armazenar dados como pares chave-valor.
-
Pretende pesquisar valores por chave de forma eficiente.
-
As chaves são únicas, pois cada chave identifica um valor.
Exemplos de casos de uso:
-
Representar um objeto com atributos (nome/idade/cargo)
-
Contar ocorrências (chaves como itens, valores como contagens)
Guia Rápido “Qual Devo Usar?”
-
Utilize listas quando necessitar de ordenação + edição + duplicados
-
Utilize tuplas quando necessita de ordenação + imutabilidade + duplicados
-
Utilize conjuntos quando necessita de artigos únicos + sem exigência de ordem + acesso rápido aos dados
-
Utilize dicionários quando necessita de pesquisa por chave + armazenamento de chaves → valor
As listas, tuplas, conjuntos e dicionários do Python resolvem problemas diferentes: as listas são ótimas para sequências ordenadas e editáveis; tuplas são ideais para dados com ordem fixa; os conjuntos ajudam a trabalhar com artigos únicos sem se preocupar com a ordem; e os dicionários permitem modelar os dados como pares chave-valor para pesquisas rápidas. Ao escolher um tipo de coleção com base nas suas necessidades de ordenação, mutabilidade, unicidade e acesso por chave, o seu código torna-se mais fácil de ler e muito mais eficiente.
