Oi, Nathaly! Como vai?
Que ótimo ver você compartilhando seu progresso no desafio de cálculo de idade com a comunidade! Sua reflexão sobre o uso da função def() mostra que você está evoluindo muito bem. Perceber que definir uma função torna o código mais reutilizável é um passo importante no aprendizado de programação.
No projeto que você apresentou, a lógica de capturar o ano de nascimento e o ano atual via input, convertendo os valores com int(), está correta e bem aplicada. A função calculo_idade recebe ano_nascimento e ano_atual como parâmetros e realiza o cálculo da diferença entre eles, o que é exatamente o esperado.
Há um detalhe importante a corrigir, porém: o print está posicionado após o return dentro da função, o que faz com que ele nunca seja executado. O Python encerra a função assim que encontra o return, então qualquer instrução depois dele é ignorada.
Aqui está uma versão ajustada do seu código:
def calculo_idade(ano_nascimento, ano_atual):
"""Calcula a idade de uma pessoa com base na diferença entre o ano atual e o ano de nascimento."""
return ano_atual - ano_nascimento
ano_nascimento = int(input('Digite o ano de nascimento: '))
ano_atual = int(input('Digite o ano atual: '))
idade_calculada = calculo_idade(ano_nascimento, ano_atual)
print(f'A idade é {idade_calculada} anos')
Veja que movi o print para fora da função. Isso é importante porque, dentro da função, o print não seria executado. A função calculo_idade apenas retorna o valor da idade, e então usamos esse valor fora da função para exibi-lo.
Continue praticando e conte sempre com o apoio do Fórum na sua jornada. Bons estudos!
Você já tentou reaproveitar essa função calculoidade em outros contextos do seu código, como calcular a idade de mais de uma pessoa em sequência?
Conteúdo relacionado:
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!