Fácil Python

Anotando uma função simples

Enunciado

Escreva uma função dobro que recebe um número inteiro e retorna seu dobro. Anote os tipos dos parâmetros e do retorno. Depois, chame a função e imprima o resultado.

Requisitos

  • A função deve se chamar dobro e aceitar um parâmetro x do tipo int.
  • O retorno deve ser anotado como int.
  • O programa deve imprimir o resultado de dobro(5).

Código inicial

def dobro(x):
    return x * 2

print(dobro(5))

Saída esperada

10
Ver dica

Use def dobro(x: int) -> int: para anotar o parâmetro e o retorno.

Mostrar solução
def dobro(x: int) -> int:
    return x * 2

print(dobro(5))

Passo a passo

  1. Definimos a função dobro com o parâmetro x anotado como int.
  2. O tipo de retorno é anotado como int após a seta ->.
  3. Dentro da função, multiplicamos x por 2 e retornamos o valor.
  4. Chamamos dobro(5) e imprimimos o resultado, que é 10.

Por que funciona

As anotações de tipo não alteram o comportamento em tempo de execução, mas documentam a intenção. Ferramentas como mypy usam essas anotações para verificar se o código está consistente. Aqui, como passamos um int, tudo está correto.

Erros comuns

  • Esquecer a anotação de retorno: def dobro(x: int): — mypy pode inferir, mas é menos explícito.
  • Anotar o retorno errado: def dobro(x: int) -> str: — mypy acusaria erro.
  • Passar um tipo diferente: dobro("5") — mypy acusaria, mas em runtime o Python tentaria multiplicar string por 2.

Outra forma de resolver

Usar float em vez de int para aceitar números decimais:

def dobro(x: float) -> float:
    return x * 2

Saída esperada

10