Revisei o curso python 3 part 2 duas vez pra ver se eu realmente aprendi, e aqui esta o meu codigo. nota: coloquei umas coisinhas a mais.
def jogo_Forca():
forca_abertura()
word_secret = lista_palavra()
enforcado = False
acerto = False
letras_corretas = ['_'] * len(word_secret)
erros = 0
indice_forca(word_secret, letras_corretas)
while not acerto and not enforcado:
chute = chute_forca()
erros = logica_forca(chute, word_secret, erros, letras_corretas)
acerto = letras_corretas.count('_') == 0
enforcado = erros == 7
if acerto == True:
imprime_mensagem_vencedor()
else:
imprime_mensagem_perdedor(word_secret)
print('FIM DE JOGO !')
def dicas_palavras(word_secret):
from random import choice
if word_secret == 'JABUTICABA':
dica = str(choice(['É roxo.', 'Cresce em uma arvore.', 'É branco por dentro.']))
elif word_secret == 'PERA':
dica = str(choice(['É verde.', 'Cresce em uma arvore.', 'Usado como comparação de tipo de corpo.']))
elif word_secret == 'MANGA':
dica = str(choice(['É amarela por dentro.', 'Cresce em uma arvora.', 'Tem uma unica semente e é grande.']))
elif word_secret == 'MELANCIA':
dica = str(choice(['É verde por fora.', 'É vermelha por dentro.', 'Tem muitas sementes.']))
elif word_secret == 'UVA':
dica = str(choice(['Nasce em cachos.', 'Se faz um produto fermentado.', 'Seu tamanho é pequeno.']))
elif word_secret == 'MORANGO':
dica = str(choice(['É vemelho.', 'Tem pequenas sementes na sua pele.', 'É um fruto rasteiro']))
elif word_secret == 'LIMAO':
dica = str(choice(['É verde.', 'É azedo.', 'É usado na salada.']))
elif word_secret == 'ABACAXI':
dica = str(choice(['Tem uma coroa.', 'É amarelo.', 'Cresce numa arvore.']))
elif word_secret == 'BANANA':
dica = str(choice(['É amarela.', 'Tem potassio.', 'Nasce em cachos.']))
else:
dica = str('SEM DICAS')
return dica
def imprime_mensagem_perdedor(word_secret):
pass
#deixei pass pq é apenas os prints de trofeu e caveira junto com a forca
def imprime_mensagem_vencedor():
pass
def desenha_forca():
pass
def lista_palavra():
from random import choice
palavra = open('Lista', 'r')
p1 = palavra.read().split()
p2 = str(choice(p1).upper())
palavra.close()
return p2
def forca_abertura():
print('#' * 27)
print('Bem-vindo ao jogo da Forca!')
print('#' * 27)
print()
print('#########################################################')
print('Neste jogo você só tem 7 vidas, então jogo com cautela!!!')
print('#########################################################')
print()
print('###################VERSÃO DAS FRUTAS#####################')
def indice_forca(word_secret, letras_corretas):
print()
print(f'Quantidade de letras é de {len(word_secret)}\n',letras_corretas)
print()
print('######################################')
print('Digite 1 para dicas sobre a palavra!!!')
print('Lembre-se, pedir dica custa uma vida.')
print('E são tres dicas pra cada fruta.')
print('######################################')
def chute_forca():
chute = str(input('Digite uma letra: ').upper().strip())
print('Jogando...')
while len(chute) > 1 or len(chute) == 0:
if len(chute) > 1:
print('Só se deve digitar uma letra por vez!')
chute = str(input('Digite uma letra: '))
elif len(chute) == 0:
print('O espaço não pode ser vazio!')
chute = str(input('Digite uma letra: '))
return chute
def logica_forca(chute, word_secret, erros, letras_corretas):
if chute == '1':
dica = dicas_palavras(word_secret)
print(dica)
if chute in word_secret:
index = 0
for letra in word_secret:
if chute == letra:
letras_corretas[index] = letra
'''Demorei para entender essa parte, mas basicamente, você usa o index como a especie de um controle,
algo para selecionar o espaço desejado dentro da lista e depois você troca ela pela letra.'''
index += 1
else:
print('Letra errada!!!')
erros += 1
desenha_forca(erros)
print(letras_corretas)
return erros