Boa tarde pessoal!
Estou adorando o curso, fiz um joguinho de forma que caso o usuário acerte pelo menos três posições da palavra é perguntado se ele quer arriscar qual é a palavra em caso negativo ele tem a opção de uma ajuda para revelar mais uma letra da palavra, havia feito com nível de dificuldade também tendo como base o tamanho da palavra e número de vogais, mas não coube para colocar aqui.
import random
print("Bem vindo ao jogo da forca!")
acertou = False
enforcou = False
lista_palavra = ["Bailarina", "Futebol", "Estátua", "Pintor", "Frio", "Bebê", "Astronauta", "Cadeira", "Cadeado", "Fernando"]
palavra = lista_palavra[int(random.random()*10)]
palavra = palavra.upper()
lista = []
lista2 = []
tentativa = 0
index2 = 0
index3 = 0
validador2 = 0
print("A palavra sortida é composta por {} caracteres:".format(len(palavra)))
while (not acertou and not enforcou):
if (index2 >= 3 and validador == 0):
index3 = 0
opcao = input("Deseja arriscar qual é a palavara secreta? Digite s ou n: ")
opcao = opcao.strip().upper()
while (opcao != "S" and opcao != "N"):
opcao = input("Digite s ou n somente: ")
opcao = opcao.strip().upper()
if (opcao == "S"):
arriscar = input("Digite a palavra pensada: ")
arriscar = arriscar.upper()
if(palavra == arriscar):
acertou = True
continue
else:
enforcou = True
continue
elif(opcao == "N" and validador2 == 0):
opcao2 = input("Deseja uma ajudinha? s ou n: ")
opcao2 = opcao2.strip().upper()
while (opcao2 != "S" and opcao2 != "N"):
opcao2 = input("Digite s ou n somente: ")
opcao2 = opcao2.strip().upper()
if (opcao2 == "S"):
for letra2 in palavra:
if(validador2 == 1):
break
if(letra2 not in lista2):
for letra3 in palavra:
if(letra3 == letra2):
lista[index3] = letra2
if(index3 == len(palavra)):
validador2 == 1
break
index3 = index3 + 1
lista2.append(letra2)
validador2 = 1
print(lista)
opcao3 = input("Deseja arriscar qual é a palavara secreta? Digite s ou n: ")
opcao3 = opcao3.strip().upper()
while (opcao3 != "S" and opcao3 != "N"):
opcao3 = input("Digite s ou n somente: ")
opcao3 = opcao3.strip().upper()
if (opcao3 == "S"):
arriscar = input("Digite a palavra pensada: ")
arriscar = arriscar.upper()
if (palavra == arriscar):
acertou = True
break
else:
enforcou = True
break
if(acertou == True or enforcou == True):
continue
chute = input("Digite a letra pensada: ")
chute = chute.strip().upper()
index = 0
validador = 1
existe = chute in lista2
if (existe):
print("Letra já digitada!")
continue
if(tentativa == 0):
for letra in palavra:
if(chute == letra):
lista.insert(index,chute)
validador = 0
index2 = index2 + 1
else:
lista.insert(index, "_")
index = index + 1
else:
for letra in palavra:
if (chute == letra):
lista[index] = chute
validador = 0
index2 = index2 + 1
index = index + 1
if(validador == 1):
print("A letra selecionada não está contida na palavra secreta!")
lista2.append(chute)
tentativa = tentativa + 1
continue
if(index2 == len(palavra)):
acertou = True
if("_" not in lista):
acertou = True
print(lista)
lista2.append(chute)
tentativa = tentativa + 1
print('\n' * 1)
if (acertou == True):
print("Execelente! Fim de Jogo!")
else:
print("Enforcou! a palavra correta foi: {}".format(palavra))