Olá, Amanda, como vai?
O que está acontecendo é que você escreveu alguns print para testar os valores e tipos de variáveis, e por isso aparecem as linhas em destaque. Repare nesse trecho:
opcao_escolhida = input('Escolha uma opção: ')
print(opcao_escolhida == 1)
print(type(opcao_escolhida))
print(type(1))
O input()
sempre retorna uma string, mesmo que o usuário digite apenas números. Então, quando você faz print(opcao_escolhida == 1)
, está comparando uma string com um número inteiro, e o Python responde False
. Na sequência, print(type(opcao_escolhida))
mostra <class 'str'>
, porque é texto, e print(type(1))
mostra <class 'int'>
, porque 1 é do tipo inteiro.
Se o seu objetivo é apenas validar a escolha, não precisa desses print. Você pode converter o valor logo depois do input, assim:
opcao_escolhida = int(input('Escolha uma opção: '))
Dessa forma, o Python já entende que a entrada deve ser um número, e a comparação com if opcao_escolhida == 1:
vai funcionar corretamente, sem exibir aquelas linhas extras que te confundiram.
Espero ter ajudado.
Siga firme nos seus estudos e conte com o fórum sempre que precisar.
Abraços :)
Caso este post tenha lhe ajudado, por favor, marcar como solucionado