Coleções
O que são e por que são diferentes de outros tipos de dados.
Antes de avançar para novos conteúdos, vamos dar um pequeno passo para trás e entender melhor algo que apareceu várias vezes ao longo das lições, mas que ainda não exploramos de verdade: as coleções.
Você já viu que elas existem, conhece o nome delas e aprendeu alguns conceitos básicos, como que elas são truthy quando possuem algum valor e falsy quando estão vazias.
Agora é a hora de entender melhor o que são coleções, por que elas existem e como elas são diferentes dos tipos de dados que já estudamos.
Por que precisamos de coleções?
Até agora, trabalhamos principalmente com tipos de dados que representam um único valor:
- números (
int,float) - strings (
str) - booleanos (
bool)
Esses tipos funcionam muito bem quando queremos guardar algo isolado, mas na maior parte dos programas, também precisamos lidar com múltiplos valores ao mesmo tempo:
- notas de um aluno
- produtos de um carrinho de compras
- nomes de usuários online
Se tentássemos guardar tudo isso em variáveis separadas, rapidamente perderíamos o controle.
Imagine, por exemplo, que você queira guardar as quatro notas que um aluno tirou no ano. Sem coleções, seria preciso criar uma variável para cada nota:
1nota1 = 8.5 2nota2 = 6.0 3nota3 = 9.0 4nota4 = 7.5 5 6print(nota1, nota2, nota3, nota4) 7 8# Saída: 9# 8.5 10# 6.0 11# 9.0 12# 7.5
Com poucos valores já começa a fica confuso. Quanto mais dados houver, pior fica.
No mundo real, você provavelmente ia querer guardar não só uma nota por bimestre desse aluno. Cada matéria diferente teria 4 notas, seriam várias matérias e esses dados seriam armazenados para muitos alunos. Assim, criar uma variável para cada se tornaria inviável.
É aí que entram as coleções. Em vez de lidar com cada valor separadamente, você passa a guardar vários valores juntos, dentro de uma única variável e enxergá-los como um grupo:
1notas = [8.5, 6.0, 9.0, 7.5] 2print(notas) 3 4# Saída: 5# [8.5, 6.0, 9.0, 7.5]
Como coleções ajudam no código?
Coleções tornam o código mais limpo e permitem resolver problemas que seriam difíceis e nada práticos se usássemos apenas valores isolados. Com elas, podemos:
- organizar múltiplos valores em uma estrutura única e clara;
- acessar todos os valores de uma só vez, caso queira trabalhar com o grupo inteiro;
- acessar cada valor individualmente, quando precisar de algo específico;
- alterar, adicionar ou remover informações (dependendo do tipo de coleção);
- evitar repetição de valores, quando isso fizer sentido;
- associar informações, como "nome" → "Ana".
As coleções não são todas iguais
Assim como números podem ser inteiros ou decimais, as coleções também têm características próprias, que influenciam a forma como você as utiliza no código.
Cada uma delas responde a perguntas importantes:
- A ordem dos itens importa?
- Posso alterar os valores depois de criar a coleção?
- Ela permite valores repetidos?
- Como os itens são acessados?
- Qual delas faz mais sentido para o meu caso de uso?
É por isso que o Python oferece quatro tipos principais de coleções:
- lista (
list) - tupla (
tuple) - conjunto (
set) - dicionário (
dict)
Cada uma resolve um tipo específico de problema e serve a um propósito diferente. Com o tempo, essas escolhas passam a ser naturais no dia a dia do código.
Esta primeira lição é apenas uma visão geral para entender que coleções são formas de agrupar vários valores de maneira organizada.
Nas próximas, vamos conhecer cada tipo com calma e aprender quais são suas características, como criar, como acessar valores e como escolher a melhor coleção para cada situação.