Boa noite,
estou tentando rodar meu programa, porém não consigo criar esta função sem que apresente este erro:
Traceback (most recent call last): File "C:\Users\User\Documents\PROGRAMAÇÃO\ALURA\JOGOS\forca.py", line 71, in jogar() File "C:\Users\User\Documents\PROGRAMAÇÃO\ALURA\JOGOS\forca.py", line 8, in jogar letrasacertadas = carregarletras() File "C:\Users\User\Documents\PROGRAMAÇÃO\ALURA\JOGOS\forca.py", line 67, in carregarletras return ["" for letra in palavrasecreta] NameError: name 'palavrasecreta' is not defined*
Eu consegui compreender que é um erro em relação ao nome e procurei pelos motivos que podem levar a este erro, porém não consegui resolvê-lo. Será que alguém consegue ajudar?
# JOGO DA FORCA
from random import randrange
def mensagem_abertura():
print("*********************************")
print("***Bem vindo ao jogo da Forca!***")
print("*********************************")
def carregar_palavra():
arquivo = open('palavras.txt', 'r')
palavras = []
for linha in arquivo:
linha = linha.strip().upper()
palavras.append(linha)
arquivo.close()
numero = randrange(0, len(palavras))
palavra_secreta = palavras[numero]
return palavra_secreta
def carregar_letras():
return ["_" for letra in palavra_secreta]
def jogar():
mensagem_abertura()
palavra_secreta = carregar_palavra()
letras_acertadas = carregar_letras()
enforcou = False
acertou = False
erros = 0
print(letras_acertadas)
# enquanto (True e True):
while not enforcou and not acertou:
chute = input('Chute uma letra: ').upper().strip()
if chute in palavra_secreta:
index = 0
for letra in palavra_secreta:
if chute == letra:
letras_acertadas[index] = letra
index += 1
else:
erros += 1
print('Você ainda possui {} tentativas...'.format(6-erros))
enforcou = erros == 6
acertou = "_" not in letras_acertadas
print('Tente outra letra...')
print(letras_acertadas)
print('Jogando...')
if acertou:
print('Parabéns! Você acertou a palavra {}!'.format(palavra_secreta))
elif enforcou == True:
print('Acabaram suas tentativas... Você foi enforcado! \nA palavra era {}!'.format(palavra_secreta))
print("Fim do jogo")
if __name__ == "__main__":
jogar()