Python para Iniciantes (Parte 3): Funções e Coleções de Dados
Aprenda a criar blocos de código reutilizáveis com funções e a estruturar dados com Listas e Dicionários na parte 3 da trilha de Python.
Cajuina Code
Na Parte 2, vimos como usar loops e decisões para dar dinâmica ao nosso código. Porém, conforme o programa cresce, escrever as mesmas linhas de código em vários pontos diferentes torna o projeto confuso, difícil de manter e propenso a erros.
Aprender a encapsular tarefas repetidas em funções e a organizar dados em estruturas como listas e dicionários é o segredo dos programadores profissionais para escrever códigos limpos e organizados.
TL;DR: Funções são blocos de código reutilizáveis identificados por um nome (definidos com a palavra-chave def), enquanto listas (coleções ordenadas por índice) e dicionários (coleções organizadas por chave e valor) servem para armazenar múltiplos dados em uma única variável.Criando Funções Reutilizáveis (def)
Uma função funciona como uma receita de bolo: você escreve o passo a passo uma vez e, sempre que precisar fazer aquele bolo, basta chamar a receita pelo nome em vez de reescrever as instruções.
No Python, definimos uma função usando a palavra-chave def, seguida pelo nome da função e parênteses:
# Definindo uma função simples
def dar_boas_vindas(nome_usuario):
print("Olá,", nome_usuario, "! Seja muito bem-vindo ao portal.")
# Chamando a função várias vezes com valores diferentes
dar_boas_vindas("Elicarlos")
dar_boas_vindas("Aline")As funções também podem processar informações e nos devolver um resultado final através da palavra-chave return:
def somar(a, b):
return a + b
resultado = somar(10, 5)
print("O resultado da soma é:", resultado)Listas: Coleções Ordenadas por Posição
Uma lista permite guardar vários valores em uma única variável, mantendo-os em uma ordem exata. No Python, usamos colchetes [] para criar listas e acessamos cada item usando sua posição numérica (índice), começando sempre em 0:
# Criando uma lista de projetos
projetos = ["Etiquetário", "Redação Mais", "Gera QR Code"]
# Acessando o primeiro item (índice 0)
print(projetos[0]) # Exibe: Etiquetário
# Adicionando um novo item na lista
projetos.append("Novo SaaS")Dicionários: Mapeando Dados por Chave-Valor
Enquanto as listas organizam itens por números de posição (índices), os dicionários organizam dados usando "chaves" nomeadas, de forma idêntica a um dicionário real onde você busca uma palavra (chave) para ler o seu significado (valor). Usamos chaves {}:
# Criando um dicionário para um produto
produto = {
"nome": "Gera QR Code Pro",
"preco": 29.90,
"ativo": True
}
# Acessando dados pela chave correspondente
print(produto["nome"]) # Exibe: Gera QR Code Pro
print(produto["preco"]) # Exibe: 29.90Tabela Comparativa: Lista vs Dicionário
Escolher entre lista ou dicionário depende de como você precisa consultar e organizar seus dados.
| Estrutura de Dados | Sintaxe | Como Acessar Itens | Melhor Uso |
|---|---|---|---|
| Lista | [item1, item2] | Por índice numérico: lista[0] | Coleções simples de itens semelhantes (ex: lista de compras, nomes de usuários). |
| Dicionário | {"chave": "valor"} | Pela chave nomeada: dici["nome"] | Objetos estruturados com propriedades diferentes (ex: perfil de usuário com nome, idade e e-mail). |
Perguntas Frequentes
O que é o índice negativo em listas do Python?
O Python permite acessar itens de uma lista de trás para frente usando índices negativos. Por exemplo, lista[-1] sempre retornará o último item da lista, enquanto lista[-2] retornará o penúltimo.
Qual a diferença entre print() e return dentro de uma função?
O comando print() serve apenas para jogar uma informação visual na tela. Já o comando return envia um valor processado de volta para o ponto onde a função foi chamada, permitindo guardar esse resultado em uma variável para ser usado em outras operações matemáticas ou lógicas.
Os dicionários no Python aceitam listas dentro deles?
Sim. Os dicionários são extremamente flexíveis e podem conter listas, outros dicionários ou qualquer tipo de dado como valores de suas chaves.
Próximo Passo
Com funções e estruturas de dados bem compreendidas, você tem todo o conhecimento básico de lógica de programação necessário para construir seus próprios sistemas.
Na Parte 4 (final), vamos construir juntos um Gerador de Senhas Seguras completo em Python!