1
resposta

[Bug] Erro quando adiciono o Radom

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeQuando vou adicionar o radom.randrange o meu arquivo da esses erros mostrados na imagem. Não consigo identificar o arquivo.

import random
def jogar():

    print("xxxxxxxxxxxxxxxxx")
    print("**Jogo da Forca**")
    print("xxxxxxxxxxxxxxxxx")

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

    letras_acertadas = ["_" for letra in palavra_secreta]

    enforcou = False
    acertou = False
    erros = 0
    tentativas = 6

    print(letras_acertadas)

    while (not enforcou and not acertou):

        chute = input("Qual letra?")
        chute = chute.strip().upper()  # strip() - serve para tirar os espaços da digitação

        if (chute in palavra_secreta):
            index = 0
            for letra in palavra_secreta:
                if (chute == letra):
                    letras_acertadas[index] = letra
                index = index + 1
        else:
            erros += 1
            tentativas -=1
            if (tentativas <= 5 ):
                print("Você errou! Restam apenas {}". format(tentativas))

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

    if (acertou):
        print("Você ganhou!!")
    else:
        print("Você perdeu!!")
    print("fim de jogo")


if (__name__ == "__main__"):
    jogar()
1 resposta
Olá victor, bom dia!

Acredito que o erro está acontecendo porque a lista está vazia, ou seja entre a leitura de arquivo e a formação da lista está acontecendo algum erro.

Tenta debugar o código utilizando um print(palavras), depois do for e vê o que essa lista está contendo.

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