Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

meu código esta dando erro, já revisei ele inteiro

esse é o código do quadro de exemplo

def jogar():
    print('*****************************************')
    print('****** Bem-vindo ao jogo da Forca *******')
    print('*****************************************')

    palavra_secreta = "banana"
    enforcou = False
    acertou = False

    while (not acertou and not enforcou):

        chute = input("Qual letra? ")
        chute = chute.strip()

        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...")

    print("Fim do jogo")

if(__name__ == '__main__'):
    jogar()

esse é o meu código

def jogar():
    print("********************************")
    print("***Bem vindo ao jogo da forca***")
    print("********************************")

    palavra_secreta = "banana"
    enforcou = False
    acertou = False

    while (not acertou and not enforcou):

        chute = input("Qual a letra? ")
        chute = chute.strip()

        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")

    print("Fim de jogo")


if (__name__ == "__main__"):
    jogar()

e esse é o erro que dá

C:\python\python.exe C:/Users/Usuario/Desktop/programas.py/forca.py
  File "C:/Users/Usuario/Desktop/programas.py/forca.py", line 19
    index = index + 1
                    ^
IndentationError: unindent does not match any outer indentation level

Process finished with exit code 1
1 resposta
solução!

Oi Wesley, tudo bem?

Esse erro está acontecendo por causa da indentação do código, ou seja, os recuos que ocorrem dentro de uma determinada instrução para reforçar a estrutura do código. No seguinte trecho:

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

Modifique para:

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

Observe que dessa forma reforçamos a ideia de que a variável index está dentro do laço for e a instrução print está dentro da cláusula if. Com essa pequena modificação o seu código deve funcionar como esperado. Da maneira como estava não conseguíamos definir claramente qual instrução estava dentro da outra, por isso o erro de indentação era apresentado.

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

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