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

Código não funciona

Recentemente troquei de computador, porém salvei os arquivos do meu projeto para poder importar no novo computador. Só que não funciona, mesmo estando tudo corretamente como havia deixado.!! Insira aqui a descrição dessa imagem para ajudar na acessibilidadeSegue o código completo:

def jogar():

imprime_mensagem_abertura()
palavra_secreta = carrega_palavra_secreta()

letras_acertadas = inicializa_letras_acertadas(palavra_secreta)
print(letras_acertadas)

enforcou = False
acertou = False
erros = 0

while(not enforcou and not acertou):

    chute = pede_chute()

    if(chute in palavra_secreta):
        marca_chute_correto(chute, letras_acertadas, palavra_secreta)
    else:
        erros += 1
    print('Ops, você errou! Faltam {} tentativas.'.format(6-erros))

    enforcou = erros == 6
    acertou = '_' not in letras_acertadas
    print(letras_acertadas)

if(acertou):
    imprime_mensagem_vitoria()
else:
    imprime_mensagem_derrota()

def imprime_mensagem_abertura(): print('*') print('Bem vindo ao jogo de Forca!') print('*')

def carrega_palavra_secreta(): arquivo = open('palavras.txt', 'r') palavras = []

for linha in arquivo:
    linha = linha.strip()
    palavras.append(linha)

arquivo.close()

numero = random.randrange(0, len(palavras))
palavra_secreta = palavras[numero].upper()
return palavra_secreta

def inicializa_letras_acertadas(palavra): return ['_' for letra in palavra]

def pede_chute(): chute = input('Qual letra?') chute = chute.strip().upper() return chute

def marca_chute_correto(chute, letras_acertadas, palavra_secreta): index = 0 for letra in palavra_secreta: if(chute == letra): letras_acertadas[index] = letra index += 1

def imprime_mensagem_vitoria(): print('Você ganhou!!')

def imprime_mensagem_derrota(): print('Você perdeu!!')

if(name == 'main'): jogar()

2 respostas
solução!

Boa noite, José! Tudo certo?

Pelo visto o arquivo 'palavras.txt' não está na pasta 'Alura', tenta achar esse arquivo e deixar na pasta ou na hora que fazer a chamada no open('palavras.txt', 'r') deixar o caminho que esse arquivo pode estar, caso esteja dentro de outra pasta ou algo do tipo, por exemplo, open('pastaX/pastaY/dados/alura.txt', 'r').

Boa noite Lucas! Tudo sim. Obrigado! Como fazia um tempo em que eu não mexia no código, acabei importando o 'palavras.txt' na pasta jogos e não na pasta Alura.