No meu terminal só aparece o diretório, estou usando o vs code.
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!
No meu terminal só aparece o diretório, estou usando o vs code.
Olá Leandro, tudo bem com você?
Com base nas mensagens de log apresentadas na imagem, peço que verifique se a função jogar() está sendo chamada no arquivo forca.py. Ao final do código devemos ter as seguintes linhas declaradas. Note que apenas o "__main__" é uma string.
if(__name__ == "__main__"):
jogar()Caso as linhas acima estejam declaradas, peço que verifique a indentação (espaços), as linhas acima devem ser declaradas fora da função jogar().
Após confirmar que as linhas acima foram declaradas como apresentadas, salve o arquivo. Basta pressionar +.
Executaremos o arquivo usando linhas de comando. Primeiramente será necessário acessar a pasta Python_Orientação a Objetos que contém o arquivo forca.py executando o comando abaixo no terminal.
cd "Python_Orientação a Objetos"Após acessar a pasta Python_Orientação a Objetos basta realizar a execução do arquivo forca.py, execute o comando abaixo no terminal.
python forca.pyNesse momento o jogo forca deverá iniciar.
Quero aproveitar a oportunidade de deixar uma dica de boas práticas. É recomendado que as pastas dos projetos que possuem múltiplas palavras sejam nomeadas fazendo o uso do underline (_) ou traço (-) no lugar do espaço. Também é recomendado que não seja feito o uso de caracteres especiais, exemplos: til (~) cedilha (ç) entre outros. Aplicando essas recomendações a pasta Python_Orientação a Objetos ficará da seguinte forma python_orientacao_a_objetos.
Verifique o ponto destacado acima, caso o jogo continue não sendo apresentado, peço que compartilhe o código completo e uma print da tela completa no momento da execução do arquivo forca.py.
Fico à disposição em caso de dúvidas.
Abraços e bons estudos.
def jogar():
print("*********************************")
print("***Bem vindo ao jogo da Forca!***")
print("*********************************")
palavra_secreta = "maçã".upper()
letras_acertadas = ["_" for letra in palavra_secreta]
enforcou = False
acertou = False
erros = 0
print(letras_acertadas)
while(not enforcou and not acertou):
chute = input("Qual letra? ")
chute = chute.strip().upper()
if(chute in palavra_secreta):
index = 0
for letra in palavra_secreta:
if(chute == letra):
letras_acertadas[index] = letra
index += 1
else:
erros =+ 1
enforcou = erros == 6
acertou = "_" not in letras_acertadas
print(letras_acertadas)
if(acertou):
print("Você ganhou! !")
else:
print("Você perdeu! !")
print("Fim do jogo")
if(__name__ == "__main__"):
jogar()
Olá Leandro, tudo bem com você?
O arquivo forca.py não está apresentado a execução da função jogar() devido a indentação (espaço) incorreta da estrutura condicional if(__name__ == "__main__"):. Será necessário remover os espaços que estão a mais na estrutura condicional if para que ela e seu conteúdo sejam executados no momento em que executamos o arquivo forca.py. Deixo abaixo os passos que devem ser realizados.
Conforme apresentado na imagem, selecione as linhas 39 e 40 do código presentes no arquivo forca.py e pressione uma vez + para remover os espaços.
Salve o arquivo pressionando +.
Acesse a pasta Python_Orientação a Objetos que contém o arquivo forca.py executando o comando abaixo no terminal.
cd "Python_Orientação a Objetos"Após acessar a pasta Python_Orientação a Objetos basta realizar a execução do arquivo forca.py, execute o comando abaixo no terminal.
python forca.pyCódigo completo com a mudança de indentação já corrigida
def jogar():
print("*********************************")
print("***Bem vindo ao jogo da Forca!***")
print("*********************************")
palavra_secreta = "maçã".upper()
letras_acertadas = ["_" for letra in palavra_secreta]
enforcou = False
acertou = False
erros = 0
print(letras_acertadas)
while(not enforcou and not acertou):
chute = input("Qual letra? ")
chute = chute.strip().upper()
if(chute in palavra_secreta):
index = 0
for letra in palavra_secreta:
if(chute == letra):
letras_acertadas[index] = letra
index += 1
else:
erros =+ 1
enforcou = erros == 6
acertou = "_" not in letras_acertadas
print(letras_acertadas)
if(acertou):
print("Você ganhou! !")
else:
print("Você perdeu! !")
print("Fim do jogo")
if(__name__ == "__main__"):
jogar()
Fico à disposição em caso de dúvidas.
Abraços e bons estudos.
Obrigado Felippe, era o código mesmo.