Olá, me chamo Rodrigo.
Esta é minha versão do código da forca:
def play():
import random
print("********************************************")
print("***** Bem vindo ao jogo da Forca! ******")
print("********************************************")
bd = ["banana", "rodrigo", "dia"]
escolha = random.randrange(0, 3)
x = bd[escolha].upper()
letras_acertadas = ["_" for letra in x]
enforcou = False
acertou = False
erros = 0
print(letras_acertadas)
while (not acertou and not enforcou):
chute = input("Digite sua letra: ")
chute = chute.strip().upper()
posicao = 0
for letra in x:
if (chute == letra):
letras_acertadas[posicao] = letra
posicao += 1
else:
erros += 1
enforcou = erros == 6
acertou = "_" not in letras_acertadas
print(letras_acertadas)
print ("Você tem {} chances".format(abs(erros - 6)))
if acertou:
print("Você ganhou!!")
print("A palavra é {}".format(x))
elif (enforcou):
print("Você foi enforcado(a)!")
print("A palavra é {}".format(x))
if __name__ == "__main__":
play()
Eu acabei removendo um dos "if's" pois achei redundante, gostaria de saber se faria alguma diferença:
while (not acertou and not enforcou):
chute = input("Digite sua letra: ")
chute = chute.strip().upper()
if (chute in x): #Removi este IF aqui.
posicao = 0
for letra in x:
if (chute == letra):
letras_acertadas[posicao] = letra
posicao += 1
else:
erros += 1
enforcou = erros == 6
acertou = "_" not in letras_acertadas
print(letras_acertadas)
print ("Você tem {} chances".format(abs(erros - 6)))