🚀 Capítulo 04: Blocos de Lego

NOTE

Este capítulo utiliza a temática de Lego para explicar as Funções em Python. Aprenda a criar blocos de código reutilizáveis!


🎯 Objetivo da Aula

Compreender o conceito de Funções em Python, aprendendo a criar funções personalizadas usando a palavra-chave def, passar parâmetros e retornar valores.

🏢 O Cenário Prático (Seu Desafio)

Imagine que você está construindo uma cidade de Lego. Para fazer dez casas, você não fabrica o plástico do zero para cada casa. Você cria um “manual de montagem” para uma casa e apenas repete o processo quantas vezes quiser, usando peças de cores diferentes!

Na programação, as funções são os nossos manuais de montagem.

  • Em vez de escrever o mesmo código de cálculo vezes no programa, você escreve uma vez dentro de uma função e apenas “chama” ela quando precisar. Seu desafio é criar as suas próprias peças de Lego!

🧠 Fundamentos: A Teoria Traduzida

📜 1. Criando uma Função (def):

Para criar uma função em Python, usamos a palavra-chave def (de definir). Como no if, usamos dois pontos : e indentação!

def mandar_alerta():
    print("Alerta! Sistema invadido!")
 
 
# Para usar (chamar) a função:
mandar_alerta()

🧩 2. Passando Peças (Parâmetros):

As funções podem receber dados para trabalhar.

def saudar_hacker(nome):
    print("Olá, Agente", nome)
 
 
saudar_hacker("Neo")  # Imprime: Olá, Agente Neo

📤 3. Devolvendo o Resultado (return):

A função pode processar algo e te devolver o resultado pronto usando a palavra return.

def somar_pontos(ponto1, ponto2):
    return ponto1 + ponto2
 
 
total = somar_pontos(10, 20)  # total guardará o valor 30

📖 Exemplo Guiado: O Construtor de Carros

Vamos criar uma função que monta a descrição de um carro de Lego:

def montar_carro(cor, tipo):
    return f"Um carro do tipo {tipo} na cor {cor} foi montado!"
 
 
meu_carro = montar_carro("Vermelho", "Esportivo")
print(meu_carro)
 
# Usamos o 'f' antes das aspas para colocar variáveis direto no texto com chaves {}!

🛠️ Prática Obrigatória 1: Criando a Função

  1. Escreva uma função chamada dobro que receba um número como parâmetro e retorne o valor dele multiplicado por .

🛠️ Prática Obrigatória 2: Usando a Função

  1. Como você chamaria a função dobro criada acima passando o número e guardando o resultado em uma variável chamada resultado?

📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

Neste curso, você entregará suas atividades enviando o código para o seu repositório no GitHub usando o aplicativo GitHub Desktop. Siga o passo a passo detalhado:

  1. Verifique a estrutura: Certifique-se de que sua estrutura de pastas final está idêntica à mostrada abaixo.
  2. Abra o GitHub Desktop: Certifique-se de que o repositório do seu curso está selecionado no canto superior esquerdo.
  3. Visualize as alterações: Na aba Changes (à esquerda), você verá todos os arquivos que criou ou modificou nesta aula.
  4. Faça o Commit:
    • No campo Summary (na parte inferior esquerda), digite uma mensagem curta descrevendo o que fez, ex: Finaliza atividades do Capítulo.
    • Clique no botão azul Commit to main (ou o nome da sua branch).
  5. Envie para a Nuvem (Push): No topo da tela, clique no botão Push origin. Isso enviará seu código do seu computador para o seu perfil no GitHub.
  6. ⚠️ IMPORTANTE (Repositório Público): Para que o professor consiga corrigir, o seu repositório no GitHub DEVE SER PÚBLICO. Repositórios privados não podem ser visualizados por quem não foi convidado.
  7. Como entregar no Microsoft Teams:
    • Copie o link do seu repositório no GitHub (ex: https://github.com/seu-usuario/seu-repositorio).
    • Abra a tarefa correspondente no Microsoft Teams.
    • Clique no botão Adicionar trabalho (ou Add work).
    • Selecione a opção Link no menu lateral.
    • Cole o link do GitHub no campo “Endereço Web” e digite um texto (ex: Meu Repositório) no campo “Texto a ser exibido”.
    • Clique em Anexar.
    • MUITO IMPORTANTE: Clique no botão Entregar (ou Turn in) no canto superior direito para concluir o envio!

📂 Estrutura de Pastas

spec_backend_com_python_e_fastapi/
├── capitulos/
│   └── capitulo_04_lego.md

💡 Checkpoint de Lógica

As variáveis criadas dentro de uma função só existem lá dentro! Se você criar uma variável x dentro de uma função, você não conseguirá ler o valor dela fora da função. Isso se chama Escopo.

🔥 Desafio de Fixação (Opcional)

Pesquise como definir um valor padrão para um parâmetro de função em Python (ex: se o usuário não passar a cor do Lego, ela ser “Azul” por padrão).

🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

def dobro(numero):
    return numero * 2

Gabarito da Prática 2:

resultado = dobro(5)

Capitulo Anterior | Proximo Capitulo