Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Bug] [ERRO] Leitura do arquivo "palavras.txt"

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Eu adicionei mais palavras ao arquivo, mas quando inicio o jogo é como se ele lesse a quantidade antiga de palavras("banana", "maçã", "melância". além do mais ele não está percorrendo cada linha do meu arquivo "txt", ele mostra todas as palvras com da pra ver na imagem acima.

def carrega_palavra_secreta(nome_arquivo="palavras.txt"):
    arquivo = open(nome_arquivo, "r", encoding="utf-8")
    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

o que estou fazendo de errado ?

1 resposta

Olá,

Você não colocou "readlines" :

for linha in arquivo.readlines():

Ou ainda, trocar todo bloco por:

# read() lê todo conteúdo do arquivo 
# split() transforma string em list com base no argumento passado, e \n é quebra de linha
palavras = arquivo.read().split('\n')

Abs -BR