Adivina el Numero Grafico

Codigo:


#!/usr/bin/python
# -*- coding: utf-8 -*-
from Tkinter import *
import random
import tkMessageBox


class app():

    control=0
    intentos=1

    def __init__(self):
        self.ventana=Tk()
        self.ventana.title("Adivina el numero")
        self.ventana.geometry("500x500")
        self.load()
        self.ventana.mainloop()

    def load(self):
        self.value=int((random.random()*9)+1)
        self.intentos=int((random.random()*9)+1)
        print self.value
        self.LTitulo=Label(self.ventana,text="Adivina el Numero", font=("Arial",12,"bold")).pack()
        self.LDescripcion=Label(self.ventana,text="Hola estoy pensando en un numero del 1 al 10 \n ¿Puedes adivinar cual es?",font=("Arial",10)).pack(padx=10,pady=10)
        self.var=StringVar()
        self.var.set("0")
        self.EBox=Entry(self.ventana,textvariable=self.var,font=("Arial",12)).place(x=120,y=100)
        self.Button=Button(self.ventana,text="Adivine?", command=lambda:self.check(self.var.get(),self.value)).place(x=310,y=97)
        tkMessageBox.showinfo("Advertencia", "Solo te aviso que tienes " + str(self.intentos) + " intentos")

    def check(self,num,cpu):
        opcion=object
        if self.intentos==self.control:
            opcion = tkMessageBox.askyesno("Intentos Agotados", "Se te acabaron los intentos, el numero era: "+str(self.value)+ "\n¿Deseas intentarlo de nuevo?")
        else:
            try:
                num = int(num)
                if num==cpu:
                    opcion=tkMessageBox.askyesno("Adivinaste","En hora buena has ganado!!\n¿Deseas intentarlo de nuevo?")
                elif num>cpu:
                    tkMessageBox.showinfo("Muy Grande","El numero que pienso es mas pequeño")
                elif num<cpu:
                    tkMessageBox.showinfo("Muy Pequeño","El numero que pienso en mas grande")
            except ValueError:
                    tkMessageBox.showinfo("Error","Creo que has dejado un campo vacio o has introducido letras")

        self.control = self.control + 1
        if opcion==True:
            print opcion
            self.value = int((random.random() * 9) + 1)
            self.intentos=int((random.random()*9)+1)
            self.control=0
            tkMessageBox.showinfo("Advertencia", "Solo te aviso que tienes " + str(self.intentos) + " intentos")
            print self.value
            self.var.set("0")
        elif opcion==False:
            self.ventana.destroy()


app=app()
Salida:

Material de descarga: click aqui

Nota: Los links incluyen el uso de un acortador, favor de resolver el captcha y esperar los 3 segundos que indica el acortador, se recomienda desabilitar el uso de bloqueadores de publicidad

Comentarios