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

String upper

Boa tarde!

Gostaria de entender porque quando digitamos "b" imprime "b"? Pois estamos utilizando "upper", com isso, todas as palavras ou letras deveriam passar para maiúsculo.

 index = 0
    for letra in palavra_secreta:
        if (chute.upper() == letra.upper()):
            print("Encontrei a letra {} na posição {}". format (letra, index))
        index = index + 1
    print("Jogando...")
2 respostas
solução!

Oi Thiago, boa noite. Tudo bem?

Isto acontece porque o upper neste código está sendo utilizado apenas para comparar, então no momento da comparação a letra digitada como chute e a letra da palavra são maiúsculas, porém, não é modificado a letra em si (fazendo uma atribuição) , por isso que ela será mostrada em minúsculo, pois o sua "origem" é minúscula. Para isso modificá-la e mostrá-la como maiúscula, teria que fazer algo similar a isto: letra = letra.upper()

        index = 0
        for letra in palavra_secreta:
            if(chute.upper() == letra.upper()):
                letra = letra.upper()
                print("Encontrei a letra {} na posição {}".format(letra, index))
            index = index + 1

Qualquer dúvida é só falar. Abraços e bons estudos!

Muito obrigado!