1
resposta

Funções do Python não funcionam como o esperado no VScode

Fiz um código simples:

idade = 26

def maiorIdade():
    global idade
    if idade > 17:
        print('Sim')
    else:
        print ('Não')



print('idade:', idade)
print('É maior de idade?', maiorIdade())

No terminal o resultado é:

idade: 26
Sim
� maior de idade? None

Alguém sabe o porque?

1 resposta

Olá tudo bem ?

Esta sendo apresentado None pelo fato de não conter o return dentro da sua função. Como você esta realizando o print do retorno da função maiorIdade que não tem um retorno definido ele apresenta None por ser o comportamento padrão do Python. Caso queira ver mais sobre pode acessar esse link onde contem uma explicação mais detalhada https://www.askpython.com/python/python-return-statement#:~:text=When%20the%20return%20statement%20has%20no%20value%2C%20the%20function%20returns%20None.&text=So%2C%20either%20you%20have%20used,and%20the%20function%20returns%20None. Para que o seu programa funcione pode ser realizado algumas alterações para que fiquei parecido com :

idade = 26

def maiorIdade():
    global idade
    if idade > 17:
        return 'Sim'
    else:
        return 'Não'

print('idade:', idade)
print('É maior de idade?', maiorIdade())