Guess Game Python Tkinter

0

I created a code in Python to present a game of advection, numbers between 1 and 100. I wanted to implement this game in a graphical interface, using the Tkinter module. I had an idea, I created a code using tkinter, but after that I crashed. My question is, how to "merge" the two codes that were created into one, to create this graphical interface.

This part is what I used to create the box with the game presentation and the button to run using Tkinter.

from tkinter import *
import random

i = Tk()

i.title('Guess Game')
i.geometry("400x200")

texto = Label(i, text = "Bem-vindo ao Guess Game")
texto.pack()

texto = Label(i, text = "Você tem 10 chances de acertar o número que eu estou pensando.")
texto.pack()
texto = Label(i, text = "Trata-se de um valor entre 1 e 100. Então, vamos lá!")
texto.pack()

form = Entry(i, width=3)
form.pack()

b = Button(i, text ="Executar", fg= "green")
b.pack()

i.mainloop()

This part is already the code of the Game itself, created earlier.

import random

n = random.randrange(1, 101)
nrepete = []
estado1 = 7  # início
estado2 = 7


def Submeter(tentativa):

    global estado2

    if abs(n - palpite) == 1:
        estado2 = 6  # fervendo
    if abs(n - palpite) == 2 or abs(n - palpite) == 3:
        estado2 = 5  # muito quente
    if abs(n - palpite) >= 4 and abs(n - palpite) <= 6:
        estado2 = 4  # quente
    if abs(n - palpite) >= 7 and abs(n - palpite) <= 9:
        estado2 = 3  # morno
    if abs(n - palpite) >= 10 and abs(n - palpite) <= 15:
        estado2 = 2  # frio
    if abs(n - palpite) >= 16 and abs(n - palpite) <= 25:
        estado2 = 1  # muito frio
    if abs(n - palpite) >= 26:
        estado2 = 0  # congelando


def FornecerPista():
    if estado1 == 7:
        if estado2 == 0:
            print('Está congelando!')
        if estado2 == 1:
            print('Está muito frio!')
        if estado2 == 2:
            print('Está frio!')
        if estado2 == 3:
            print('Está morno!')
        if estado2 == 4:
            print('Está quente!')
        if estado2 == 5:
            print('Está muito quente!')
        if estado2 == 6:
            print('Está fervendo!')
    if estado1 - estado2 == 0:
        if estado2 == 0:
            print('Seu palpite continua congelando!')
        if estado2 == 1:
            print('Seu palpite continua muito frio!')
        if estado2 == 2:
            print('Seu palpite continua frio!')
        if estado2 == 3:
            print('Seu palpite continua morno!')
        if estado2 == 4:
            print('Seu palpite continua quente!')
        if estado2 == 5:
            print('Seu palpite continua muito quente!')
        if estado2 == 6:
            print('Seu palpite continua fervendo!')
    if estado1 - estado2 > 0:
        if estado2 == 0:
            print('Ops, seu palpite deu uma esfriada e agora está congelando!')
        if estado2 == 1:
            print('Ops, seu palpite deu uma esfriada e agora está muito frio!')
        if estado2 == 2:
            print('Ops, seu palpite deu uma esfriada e agora está frio!')
        if estado2 == 3:
            print('Ops, seu palpite deu uma esfriada e agora está morno!')
        if estado2 == 4:
            print('Ops, seu palpite deu uma esfriada e agora está quente!')
        if estado2 == 5:
            print('Ops, seu palpite deu uma esfriada e agora está muito quente!')
    if estado1 - estado2 < 0:
        if estado2 == 1:
            print('Ops, seu palpite deu uma esquentada e agora está muito frio!')
        if estado2 == 2:
            print('Ops, seu palpite deu uma esquentada e agora está frio!')
        if estado2 == 3:
            print('Ops, seu palpite deu uma esquentada e agora está morno!')
        if estado2 == 4:
            print('Ops, seu palpite deu uma esquentada e agora está quente!')
        if estado2 == 5:
            print('Ops, seu palpite deu uma esquentada e agora está muito quente!')
        if estado2 == 6:
            print('Ops, seu palpite deu uma esquentada e agora está fervendo!')


for tentativa in range(1, 11):
    while True:
        try:
            palpite = input('Tentativa' + str(tentativa) + ':')
            palpite = int(palpite)
            nrepete.append(palpite)
            if (palpite < 1) or (palpite > 100):
                raise ValueError
            if nrepete.count(palpite) >= 2:
                raise NameError
            else:
                break
        except NameError:
            print('Esse valor já foi testado! Tente de novo.')
        except ValueError:
            print('Valor inválido! Tente de novo.')

    if palpite == n:
        print('\nParabéns !')
        print('\nVocê acertou o número', n, 'após', tentativa, 'tentativa(s)!')
        break
    if tentativa == 1:
        SetStatus(tentativa)
    if tentativa > 1:
        estado1 = estado2
        SetStatus(tentativa)
    FornecerPista()

    if tentativa == 10 and palpite != n:
        print('\nLamento, mas após', tentativa, 'tentativas')
        print('Você não conseguiu acertar o número', n, 'que eu estava pensando!')
    
asked by anonymous 07.08.2018 / 23:36

0 answers