Aula 22: Parâmetros e Argumentos

Passando informações para suas funções.

O Que Você Vai Aprender

Nesta aula de 1 hora, você dará um passo crucial no uso de funções: aprenderá a como elas podem receber informações externas para se tornarem mais dinâmicas e flexíveis. Entenderá a diferença entre os "espaços reservados" (parâmetros) e os "valores reais" (argumentos), e como gerenciar múltiplos deles, incluindo a conveniência dos valores padrão.

📥 Passar Informações

Aprender a usar parâmetros para enviar dados para dentro de uma função.

↔️ Parâmetros vs. Argumentos

Entender a distinção entre esses dois conceitos fundamentais.

🔢 Múltiplos Parâmetros

Trabalhar com funções que aceitam mais de uma informação de entrada.

✅ Parâmetros com Valor Padrão

Tornar argumentos opcionais usando valores padrão (default).

Parâmetros e Argumentos: A Ponte de Dados

Para que uma função seja flexível, ela precisa poder trabalhar com dados diferentes a cada vez que é chamada. É aí que entram os parâmetros e argumentos. Embora frequentemente usados de forma intercambiável, eles têm papéis distintos:

Parâmetro

É a variável listada dentro dos parênteses na definição da função. Pense nele como um "espaço reservado" ou um nome para o valor que a função espera receber.

def saudacao_personalizada(nome): # 'nome' é o parâmetro
    print(f"Olá, {nome}! Tudo bem?")

Argumento

É o valor real que é enviado para a função quando ela é chamada. O argumento preenche o "espaço reservado" do parâmetro.

saudacao_personalizada("Ana") # "Ana" é o argumento
saudacao_personalizada("Carlos") # "Carlos" é o argumento

Simulador: Saudação Personalizada

Digite um nome e veja a função `saudacao_personalizada()` usá-lo para exibir uma mensagem.

Múltiplos Parâmetros: Funções com Mais Entradas

Muitas vezes, uma função precisa de mais de uma informação para realizar sua tarefa. Funções podem aceitar vários parâmetros, simplesmente separando-os com vírgulas na definição.

Exemplo: Função de Soma

def somar(a, b):
    resultado = a + b
    print(f"A soma de {a} e {b} é {resultado}")

somar(5, 3)    # Saída: A soma de 5 e 3 é 8
somar(10, 20)  # Saída: A soma de 10 e 20 é 30

Na chamada, os argumentos são passados na mesma ordem dos parâmetros definidos (chamada posicional).

Simulador: Função `somar()`

Insira dois números e veja a função `somar()` calcular e exibir o resultado.

Parâmetros com Valor Padrão (Default)

Parâmetros com valor padrão permitem que você defina um valor "pré-definido" para um parâmetro na definição da função. Isso torna o argumento opcional na chamada da função. Se o argumento não for fornecido, o valor padrão é usado automaticamente.

Sintaxe e Regra Importante

def criar_usuario(nome, administrador=False): # 'administrador' tem valor padrão
    print(f"Criando usuário: {nome}")
    if administrador:
        print("Status: Administrador")
    else:
        print("Status: Usuário padrão")

Regra: Parâmetros com valor padrão DEVEM vir DEPOIS dos parâmetros sem valor padrão!

# CORRETO: def funcao(param1, param_com_padrao=valor)
# ERRADO:  def funcao(param_com_padrao=valor, param1)

Exemplos de Chamada:

criar_usuario("João")                # Usa administrador=False (padrão)
criar_usuario("Maria", administrador=True) # Sobrescreve o padrão

Simulador: Função `criar_usuario()`

Crie usuários. Tente sem marcar "Administrador" e depois marcando.

Desafios para Continuar

Agora que você domina parâmetros e argumentos, é hora de praticar! Resolva estes problemas no seu ambiente de desenvolvimento Python para solidificar seu aprendizado.

  • Calcular Área do Retângulo

    Crie uma função `calcular_area_retangulo(base, altura)` que receba a base e a altura de um retângulo como parâmetros e imprima a área calculada.

    Simulador: Área do Retângulo

  • Saudação com Período do Dia

    Modifique a função de saudação (ex: `saudacao_personalizada(nome)`) para aceitar um segundo parâmetro opcional `periodo` com o valor padrão `"dia"`. A função deve imprimir mensagens como "Bom dia, [nome]!", "Boa tarde, [nome]!", etc., dependendo do `periodo` fornecido ou do padrão.

    Simulador: Saudação com Período