Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Mensagem de erro na leitura

print("***") print("Jogo de Adivinhação") print("***") print() numero_secreto = 42 total_de_tentativas = 3

while (total_de_tentativas > 0): chute_texto = input("Digite o seu numero: ") chute = int(chute_texto) print() acertou = (chute_texto == numero_secreto) maior = (chute_texto > numero_secreto) menor = (chute_texto < numero_secreto) print("Você digitou",chute) print() if (acertou): print("Você acertou") else: if (maior): print("Seu chute foi maior que o numero secreto.") elif (menor): print("Seu chute foi menor que o numero secreto.") total_de_tentativas = total_de_tentativas - 1 print() print("Fim do jogo...") print()

mensagem de erro:


Jogo de Adivinhação


Digite o seu numero:2

Traceback (most recent call last): File "C:/docs/cursos/alura/python3/exercicios/adivinhacao/adivinhacao.py", line 14, in maior = (chute_texto > numero_secreto) TypeError: '>' not supported between instances of 'str' and 'int'

Process finished with exit code 1

2 respostas
solução!

Fala ai Marcus beleza? Entao cara, o erro seu está sendo, pelo fato do:

chute_text 

é uma string, a intenção que você teve na comparação foi usar a variavel

chute `, pois nela você ja fez a converção de string para inteiro. O jeito correto ficaria assim:

maior = (chute > numero_secreto)
menor = (chute < numero_secreto)

espero que isso ajude, forte abraço!

Consegui. A questão era o conflito entre as dias versões do Python instadas na minha máquina. Obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software