How to print a function in Python?

Asked

Viewed 1,334 times

1

I’m trying to make this code work but I’m not getting it.

Enter the name and year of birth, and return the correct values dps, but I can’t get back the number of years... What is my mistake?

print 'Digite seu nome:'
nome = raw_input()

print 'Digite o seu ano de nascimento:'
ano = raw_input()

def ano_covertido(idade):
    ano = raw_input()
    ano_covertido = int(ano)
    ano_atual = date.today().year
    ano_atual - ano

print 'Bem vindo %s' % (nome)
print 'Voce tem %s de idade' % (idade)

1 answer

1


The function ano_covertido is not running, and it also does not return any result.

ano_covertido must look something like this:

def ano_covertido(ano): 
    # Pega o ano do dia atual
    ano_atual = date.today().year 
    # Retorna a diferenca entre o ano atual e informado na funcao
    return ano_atual - ano 

To get user input, do so:

# Guarda em "nome" a entrada do usuario
nome = raw_input('Digite seu nome:')
# Guarda um inteiro em "ano"
ano = int(raw_input('Digite o seu ano de nascimento: '))

Now that you know the year, call the function:

idade = ano_covertido(ano)

Finally, show the information to the user:

print ('Bem vindo %s' % (nome))
print ('Voce tem %s de idade' % (idade))

The whole code goes like this:

from datetime import date

def ano_covertido(ano):
    ano_atual = date.today().year 
    return ano_atual - ano        

nome = raw_input('Digite seu nome:')

ano = int(raw_input('Digite o seu ano de nascimento: '))

idade = ano_covertido(ano)

print ('Bem vindo %s' % (nome))
print ('Voce tem %s de idade' % (idade))

Browser other questions tagged

You are not signed in. Login or sign up in order to post.