idade_str = input("Digite sua idade: ")
idade = int(idade_str)
if (idade > 18):
print("Você é maior de idade.")
else:
if (idade < 12):
print("Você é uma criança.")
elif (idade > 12):
print("Você é um adolescente.")
Minha solução é dizer que se elif for >= a 12 ele é uma adolescente pois
if já diz que se ela for < 12 ele é uma criança
o Python precisa entender que se ela tem 12 anos ela já é uma adolescente e para ele entender eu utilizo o sinal >= isso fará que o valor retorne true;
eu aconselho também fazer o mesmo com > 18 e alterar para >= 18 , pois se ela já tem 18 anos , na Lei a pessoa já é de maior
então ficaria assim :
idade_str = input("Digite sua idade: ")
idade = int(idade_str)
if (idade >= 18):
print("Você é maior de idade.")
else:
if (idade < 12):
print("Você é uma criança.")
elif (idade >= 12):
print("Você é um adolescente.")
Resultado de todas as possibilidades :
Maior ou igual 18
Menor de Idade
Adolescente
Maior que 12
site utilizado para executar o código : https://www.programiz.com/python-programming/online-compiler/