jueves, 14 de septiembre de 2017

Juego del gato en python

Codigo

# -*- coding: utf-8 -*-from Tkinter import * #importa libreria tkinter 
import tkMessageBox #importa libreria tkinter--Cajas de mensaje 
import tkSimpleDialog #importa libreria tkinter--Cajas de dialogo
ven = Tk() #se crea la venta 
ven.geometry("370x460") #se le dan a la ventana sus dimenciones 
ven.title("Juego del gato") #Se le da a la ventaan un titulo
turno = 0 #Variable turnonomj1 = "" #Variable que almacena el nombre del jugador 1
 nomj2 = "" #Variable que almacena el nombre del jugador 2 
lisb = [] #Arreglo que guardara los botones 
tab = [] #Arreglo que guardara que jugador tomo cada casilla ya sea la X o el O
 tab=range(9) #Declaramos el tamaño del arreglo 
turj = StringVar() #Declaramos una variable de tipo sting para poder usarla al enviarle datos a la etiqueta que marcara el turno

linea = Canvas(ven, width=310, height=10)
linea.place(x=30, y=120)
linea.create_line(310, 0, 0, 0, width=25, fill='black')
l2 = Canvas(ven, width=310, height=10)
l2.place(x=30, y=220)
l2.create_line(310, 0, 0, 0, width=25, fill='black')
l3 = Canvas(ven, width=10, height=310)
l3.place(x=130, y=25)
l3.create_line(0, 310, 0, 0, width=25, fill='black')
l4 = Canvas(ven, width=10, height=310)
l4.place(x=230, y=25)
l4.create_line(0, 310, 0, 0, width=25, fill='black')
#En esta parte se crean las 4 lineas que le dan forma al tablero , con su ancho , largo y posicion

def bloq(): #Funcion de bloqueo del juego     
for i in range(0, 9): #Ciclo que se encargara de detener el juego 
lisb[i].config(state="disable")#En esta parte se le ordena a todos los elementos del arreglo lisb[] , que son botones , que pasen al estado de disable        #Estado en el cual el usuario no  puede interactuar con ellos de ninguna manera

def inij():#Funcion de iniciar juego    for i in range(0, 9): #Ciclo que se encarga de hacer los preparativos para iniciar el juego        lisb[i].config(state="normal") #En esta parte se le ordena a todos los elementos del arreglo lisb[] , que son botones , que pasen al estado de normal        #Estado en el cual el usuario puede interactuar con ellos        lisb[i].config(bg="lightgray")#En esta parte se le da un color a los botones del arreglo lisb        lisb[i].config(text="")#En esta parte se le asigna un texto vacio a los botnes del arreglo listb        tab[i] = "N" #En esta parte se limpia el arreglo tab    global nomj1, nomj2  # indica a que variables queremos acceder
    nomj1 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 1: ")#Se ´pide el nombre del jugador 1    nomj2 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 2: ")#Se ´pide el nombre del jugador 2    if(nomj1==None or nomj1==""): nomj1="Uno" #Hace que el jugador 1 tome dicho nombre en caso de que el usuario olvodase escribirlo o clikease en cancelar en la caja de texto    if(nomj2==None or nomj2==""):nomj2="Dos" #Hace que el jugador 2 tome dicho nombre en caso de que el usuario olvodase escribirlo o clikease en cancelar en la caja de texto    turj.set("Turno: " + nomj1) #Hace que la variable turj tome el nombre del jugador 1 y se la envia a la etiqueta tue
def cam(num): #Funcion que se encarga de llenar las casillas con la figura correspondiente a cada jugador y tambien de llenar el arreglo tab , tomando en cuanta el boton pulsado con el parametro num    global turno, nomj1, nomj2
    if  turno == 0: #Turno del jugador 0        lisb[num].config(text="X") #Se llena el boton correspondiente al lugar num en el arreglo lisb con el texto "X"        lisb[num].config(bg="white")#Se le pone el colo blanco al boton correspondiente al lugar num en el arreglo lisb        tab[num] = "X" #Se llena el lugar num con la letra "X" en el arreglo tub        turno = 1 #Se pasa al siguiente turno        turj.set("Turno: " + nomj2)#Hace que la variable turj tome el nombre del jugador 2 y se la envia a la etiqueta tue    elif  turno == 1: #Turno del jugador 1        lisb[num].config(text="O")#Se llena el boton correspondiente al lugar num en el arreglo lisb con el texto "O"        lisb[num].config(bg="lightblue")#Se le pone el colo azul al boton correspondiente al lugar num en el arreglo lisb        tab[num] = "O" #Se llena el lugar num con la letra "O" en el arreglo tub        turno = 0#Se pasa al siguiente turno        turj.set("Turno: " + nomj1)#Hace que la variable turj tome el nombre del jugador 1 y se la envia a la etiqueta tue    lisb[num].config(state="disable") #El boton correspondiente al lugar num en el arreglo lisb queda en estado "disable" para que el jugador ya no pueda interactuar con el    verif() #Se llama a la funcion verif
def verif():#Funcion encargada de hacer las comparaciones entre casillas para determinar al ganador
    if (tab[0] == "X" and tab[1] == "X" and tab[2] == "X") or (tab[3] == "X" and tab[4] == "X" and tab[5] == "X") or (tab[6] == "X" and tab[7] == "X" and tab[8] == "X") or \
            (tab[0] == "X" and tab[3] == "X" and tab[6] == "X") or (tab[1] == "X" and tab[4] == "X" and tab[7] == "X") or (tab[2] == "X" and tab[5] == "X" and tab[8] == "X") or \
            (tab[0] == "X" and tab[4] == "X" and tab[8] == "X") or (tab[2] == "X" and tab[4] == "X" and tab[6] == "X"):
        #En esta parte se comparan las posiciones del arreglo tab para ver si existe alguna de las combinaciones que resultan en la victoria del jugador con la "X"        bloq()#Se llama a la funcion bloq
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)#Se muestra un mensaje de victoria para el jugador 1 ya que si existia una de las combinaciones que lo hacen ganar

    elif (tab[0] == "O" and tab[1] == "O" and tab[2] == "O") or (tab[3] == "O" and tab[4] == "O" and tab[5] == "O") or \
            (tab[6] == "O" and tab[7] == "O" and tab[8] == "O") or (tab[0] == "O" and tab[3] == "O" and tab[6] == "O") or (tab[1] == "O" and tab[4] == "O" and tab[7] == "O") or (tab[2] == "O" and tab[5] == "O" and tab[8] == "O") or \
            (tab[0] == "O" and tab[4] == "O" and tab[8] == "O") or (tab[2] == "O" and tab[4] == "O" and tab[6] == "O"):
        # En esta parte se comparan las posiciones del arreglo tab para ver si existe alguna de las combinaciones que resultan en la victoria del jugador con la "O"        bloq()#Se llama a la funcion bloq        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)#Se muestra un mensaje de victoria para el jugador 2 ya que si existia una de las combinaciones que lo hacen ganar




b0 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(0))
lisb.append(b0)
b0.place(x=50, y=50)
b1 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(1))
lisb.append(b1)
b1.place(x=150, y=50)
b2 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(2))
lisb.append(b2)
b2.place(x=250, y=50)
b3 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(3))
lisb.append(b3)
b3.place(x=50, y=150)
b4 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(4))
lisb.append(b4)
b4.place(x=150, y=150)
b5 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(5))
lisb.append(b5)
b5.place(x=250, y=150)
b6 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(6))
lisb.append(b6)
b6.place(x=50, y=250)
b7 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(7))
lisb.append(b7)
b7.place(x=150, y=250)
b8 = Button(ven, width=9, height=3, relief=SOLID, cursor="pencil", command=lambda: cam(8))
lisb.append(b8)
b8.place(x=250, y=250)
#En esta parte se crean los botones con us dimenciones ,posiciones , contornos y funciones , ademas de que son introducidos al arreglo lisb

tue = Label(ven, textvariable=turj).place(x=140, y=10)#Se crea la etiqueta que anuncia el jugador en turno y se coloca en su posicionbini = Button(ven, bg='blue', fg='white', text='Iniciar juego', cursor="sizing", width=15, height=3,command=inij).place(x=130, y=360)#Se crea el boton que inica el juego con sus dimenciones , colores y funcionesbloq()#En esta parte se llama a la funcion bloq para que el jugador no pueda interactuar con los botones hasta no haber pulsado el botn de inicia juego
ven.mainloop()#Se dibuja la ventana y se mantiene activa
 
https://mega.nz/#!MyZ32DwA!O_40DJo8biyK_JMMwnolhbnl-xGiTkOjZpXwXEfoCAQ
 
Imagenes
 

domingo, 10 de septiembre de 2017

Figuras en python con ventanas hijas

Codigo:
# -*- coding: utf-8 -*- 
from Tkinter import *
v0 = Tk()
v0.title("Ventana madre")
v0.config(bg="black")
v0.geometry("500x500")
def mostrar(num):
    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="black")
    v1.geometry("500x500")
    if  num==1:
     hola = Canvas(v1, width=300, height=210, bg='white')
     hola.pack(expand=YES, fill=BOTH)
     hola.create_oval(10, 10, 200, 200, width=5, fill='blue')
     b3 = Button(hola, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 2:
     canvas = Canvas(v1,width=300, height=210, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_rectangle(10, 10, 200, 200, width=5, fill='red')
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 3:
     canvas2 = Canvas(v1,width=300, height=210, bg='white')
     canvas2.pack(expand=YES, fill=BOTH)
     canvas2.create_line(0, 200, 200, 0, width=10, fill='green')
     canvas2.create_line(0, 0, 200, 200, width=10, fill='red')
     b3 = Button(canvas2, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
def ocultar(ventana):ventana.destroy()
def ejecutar(f): v0.after(200, f)
b1 = Button(v0, text="Abrir ventana con Circulo", command=lambda: ejecutar(mostrar(1)) )
b1.grid(row=1, column=1)
b3 = Button(v0, text="Abrir ventana con cuadrado", command=lambda: ejecutar(mostrar(2)))
b3.grid(row=1, column=2)
b3 = Button(v0, text="Abrir ventana con linea", command=lambda: ejecutar(mostrar(3)))
b3.grid(row=1, column=3)
v0.mainloop()

Actualización del código:
# -*- coding: utf-8 -*-from Tkinter import *
v0 = Tk()
v0.title("Ventana madre")
v0.config(bg="black")
v0.geometry("1800x200")
def mostrar(num):
    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="black")
    v1.geometry("500x500")
    if  num==1:
     hola = Canvas(v1, width=300, height=210, bg='white')
     hola.pack(expand=YES, fill=BOTH)
     hola.create_oval(10, 10, 200, 200, width=5, fill='blue')
     b3 = Button(hola, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 2:
     canvas = Canvas(v1,width=300, height=210, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_rectangle(10, 10, 200, 200, width=5, fill='red')
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 3:
     canvas2 = Canvas(v1,width=300, height=210, bg='white')
     canvas2.pack(expand=YES, fill=BOTH)
     canvas2.create_line(0, 200, 200, 0, width=10, fill='green')
     canvas2.create_line(0, 0, 200, 200, width=10, fill='red')
     b3 = Button(canvas2, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 4:
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     xy = 10, 10, 190, 190     canvas.create_arc(xy, start=0, extent=270, fill='gray60')
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 5:
     canvas123 = Canvas(v1,width=300, height=200, bg='white')
     canvas123.pack(expand=YES, fill=BOTH)
     canvas123.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')
     b3 = Button(canvas123, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 6:
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     xy = 10, 10, 190, 190     canvas.create_arc(xy, start=0, extent=270, fill='gray60')
     canvas.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 7:
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_text(150,70,fill="Red",font="Times",text="Hola \nmundo")
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
    elif num == 8:
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_polygon(40, 40, 40, 140, 140, 140, 140, 100,fill="lightblue", outline="brown", width=6)
     b3 = Button(canvas, text="ocultar", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 9:
     canvas = Canvas(v1, width=300, height=200, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_polygon(420,180,
                           420,60,
                           380,100,
                           300,100,
                           260,60,
                           260,140,
                           220,100,
                           180,100,
                           140,140,
                           140,80,
                           150,80,
                           200,40,
                           200,20,
                           160,20,
                           90,80,
                           100,160,
                           120,270,
                           200,270,
                           200,230,
                           160,230,
                           160,210,
                           180,190,
                           220,190,
                           220,270,
                           280,270,
                           280,230,
                           260,230,
                           260,180,
                           400,200,
                           360,220,
                           320,220,
                           280, 180,
                           fill="lightblue", outline="brown", width=6)
     b3 = Button(canvas, text="ocultar-Eduardo Pablo Aquino Sanchez", command=lambda: ejecutar(ocultar(v1)))
     b3.grid(row=1, column=3)
     v1.deiconify()
    elif num == 10:
       canvas = Canvas(v1, width=300, height=200, bg='white')
       canvas.pack(expand=YES, fill=BOTH)
       canvas.create_polygon(130,20,
                           150,90,
                           210,90,
                           160,130,
                           180,200,
                           130,160,
                           80,200,
                           100,130                             ,50,90                             ,110,90,
                           fill="lightblue", outline="brown", width=6)
       b3 = Button(canvas, text="ocultar-David Maldonado", command=lambda: ejecutar(ocultar(v1)))
       b3.grid(row=1, column=3)
       v1.deiconify()
    elif num == 11:
        canvas = Canvas(v1, width=300, height=200, bg='white')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(160,160,
                              199.5,121.5,
                              240,120,
                              260,140,
                              340,140,
                              360,120,
                              359.7,101.8,
                              340,100,
                              320.4,81.4,
                              360,80,
                              380,100,
                              380.1,121.5,
                              360,140,
                              360,240,
                              340,240,
                              340,200,
                              258.6,198.9,
                              260,241.6,
                              237.6,238.9,
                              240,200,
                              220,160,
                              200,200,

                              fill="lightblue", outline="brown", width=6)
        b3 = Button(canvas, text="ocultar-Orta Maldonado", command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)
        v1.deiconify()
    elif num == 12:
         canvas = Canvas(v1, width=390, height=350, bg='black')
         canvas.pack(expand=YES, fill=BOTH)
         puntos = [00, 20, 60, 20, 80, 80, 120, 80, 160, 20, 220, 40, 180, 40, 140, 80, 160, 100, 160, 120, 160, 140,
                  140, 160, 180, 180, 200, 200, 200, 240, 180, 280, 140, 300, 180, 320, 180, 340, 120, 340, 100, 320,
                  80, 340, 20, 340, 20, 320, 60, 300, 20, 280, 00, 240, 00, 200, 20, 180, 60, 160, 40, 140, 40, 120, 40,
                  100, 60, 80, 40, 40]
         canvas.create_polygon(puntos, fill="white", outline="white", width=9)

         b3 = Button(canvas, text="ocultar-Lourdes Brito", command=lambda: ejecutar(ocultar(v1)))
         b3.grid(row=1, column=3)
         v1.deiconify()
    elif num == 13:
        canvas = Canvas(v1, width=390, height=350, bg='black')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(52.5, 14.5, 37, 59.1, 51, 59.1, fill="#5C554E", outline="#5C554E", width=1)
        canvas.create_polygon(19.3, 56.8, 58, 59.1, 67, 91, 37.5, 83, fill="#C3BAB5", outline="#C3BAB5", width=1)
        canvas.create_polygon(58, 57.8, 78, 77, 71, 103, fill="#D4CCC1", outline="#D4CCC1", width=1)
        canvas.create_polygon(37.5, 83, 67.4, 91, 71, 103, fill="#998C8A", outline="#998C8A", width=1)
        canvas.create_polygon(71, 103, 71, 104.8, 59.1, 104.8, 53.2, 91, fill="#665B57", outline="#665B57", width=1)
        canvas.create_polygon(86, 105.6, 98.2, 148.6, 47, 133.6, 24.2, 103.6, fill="#C3BAB5", outline="#C3BAB5",
                              width=1)
        canvas.create_polygon(98.2, 148.6, 102, 165.2, 47, 133.6, fill="#9B8D8A", outline="#9B8D8A", width=1)
        canvas.create_polygon(86, 105.6, 124, 169, 120, 196, 110.8, 196, fill="#D5CDC2", outline="#D5CDC2", width=1)
        canvas.create_polygon(102, 165.2, 110.8, 196, 99, 196, 80.6, 153, fill="#605550", outline="#605550", width=1)
        canvas.create_polygon(139.5, 197, 147, 241, 71, 220.4, 46, 193, fill="#C3BAB5", outline="#C3BAB5", width=1)
        canvas.create_polygon(147, 241, 150, 261.4, 71, 220.4, fill="#968B87", outline="#968B87", width=1)
        canvas.create_polygon(139.5, 197, 193, 274.2, 189, 307.8, 176, 321, 161.6, 321, fill="#D4CCC1",
                            outline="#D4CCC1", width=1)
        canvas.create_polygon(150, 261.4, 161.6, 321, 126.8, 249, fill="#605551", outline="#605551", width=1)

        canvas.create_polygon(199.4, 307.8, 189, 307.8, 176, 321, 186.6, 461, 184, 448.8, 171, 479.5, 199.4, 503,
                              fill="#C2AD9C", outline="#C2AD9C", width=1)
        canvas.create_polygon(176, 321, 161.6, 321, 186.6, 461, fill="#615652", outline="#615652", width=1)
        canvas.create_polygon(161.6, 321, 136, 359.4, 177.2, 409, fill="#D9C6B7", outline="#D9C6B7", width=1)
        canvas.create_polygon(144.4, 369.8, 139.6, 384.6, 160, 389.4, fill="#443232", outline="#443232", width=1)
        canvas.create_polygon(139.6, 384.6, 160, 389.4, 177.2, 409, 169.2, 450, fill="#826E65", outline="#826E65",
                              width=1)
        canvas.create_polygon(171, 479.5, 180.6, 497.8, 191.2, 496.8, fill="#463334", outline="#463334", width=1)
        canvas.create_polygon(177.2, 409, 164.8, 475, 176.5, 511, 199.4, 522, 199.4, 502.8, 191.2, 496.8, 180.6, 497.8,
                              171, 479.5, 184, 448.8, fill="#9B7F79", outline="#9B7F79", width=1)

        canvas.create_polygon(151.8, 335.4, 109.6, 280, 142.2, 349.2, fill="#5F5150", outline="#5F5150", width=1)
        canvas.create_polygon(109.6, 280, 70.3, 266, 94.3, 329, 131.3, 326, fill="#483636", outline="#483636", width=1)
        canvas.create_polygon(94.3, 329, 137, 336, 132, 326.8, fill="#C2AF9D", outline="#C2AF9D", width=1)
        canvas.create_polygon(115, 333, 136, 359.4, 142.2, 349.2, 137, 336, fill="#826E65", outline="#826E65", width=1)

        canvas.create_polygon(346.5, 14.5, 347.5, 59.1, 361, 59.1, fill="#2E2621", outline="#2E2621", width=1)
        canvas.create_polygon(379.4, 56.8, 341.8, 59.1, 332, 91, 361, 83, fill="#908782", outline="#908782", width=1)
        canvas.create_polygon(341.5, 57.8, 324, 75, 327.6, 103, fill="#A29B8F", outline="#A29B8F", width=1)
        canvas.create_polygon(361, 83, 332.4, 91, 329, 103, fill="#685D59", outline="#685D59", width=1)
        canvas.create_polygon(329, 103, 326.8, 104.8, 340, 104.8, 345.6, 91, fill="#2D2220", outline="#2D2220", width=1)

        canvas.create_polygon(313, 105.6, 301, 148.6, 352, 133.6, 374.5, 103.6, fill="#908782", outline="#908782",
                              width=1)
        canvas.create_polygon(301, 148.6, 297, 165.2, 352, 133.6, fill="#625755", outline="#625755", width=1)
        canvas.create_polygon(313, 105.6, 274, 169, 279, 196, 288, 196, fill="#A1998E", outline="#A1998E", width=1)
        canvas.create_polygon(297, 165.2, 288, 196, 300, 196, 318, 153, fill="#2D221E", outline="#2D221E", width=1)

        canvas.create_polygon(260, 197, 252, 241, 331, 220.4, 352.4, 193, fill="#908782", outline="#908782", width=1)
        canvas.create_polygon(252, 241, 249, 261.4, 331, 220.4, fill="#645955", outline="#645955", width=1)
        canvas.create_polygon(260, 197, 205, 274.2, 209.8, 307.8, 223, 321, 238, 321, fill="#A1998E", outline="#A1998E",
                              width=1)
        canvas.create_polygon(249, 261.4, 238.6, 321, 271.8, 249, fill="#2D221E", outline="#2D221E", width=1)

        canvas.create_polygon(199.4, 307.8, 209.8, 307.8, 223, 321, 212.6, 461, 215, 448.8, 228, 479.5, 199.4, 503,
                              fill="#8E7968", outline="#8E7968", width=1)
        canvas.create_polygon(223, 321, 238.6, 321, 212.6, 461, fill="#302722", outline="#302722", width=1)
        canvas.create_polygon(238, 321, 262.8, 359.4, 222.5, 409, fill="#A69384", outline="#A69384", width=1)
        canvas.create_polygon(254.4, 369.8, 259.6, 384.6, 238, 389.4, fill="#120001", outline="#120001", width=1)
        canvas.create_polygon(259.6, 384.6, 238, 389.4, 222.5, 409, 229.5, 450, fill="#4F3B32", outline="#4F3B32",
                              width=1)
        canvas.create_polygon(228, 479.5, 218.3, 497.8, 207.5, 496.8, fill="#180A04", outline="#180A04", width=1)
        canvas.create_polygon(222.5, 409, 234, 475, 223, 511, 199.4, 522, 199.4, 502.8, 207.5, 496.8, 218.3, 497.8, 228,
                              479.5, 215, 448.8, fill="#674C45", outline="#674C45", width=1)
        canvas.create_polygon(247, 335.4, 290.6, 280, 256.8, 349.2, fill="#281F1D", outline="#281F1D", width=1)
        canvas.create_polygon(290.6, 280, 328, 266, 304.8, 329, 267.5, 326, fill="#140202", outline="#140202", width=1)
        canvas.create_polygon(304.8, 329, 262.5, 336, 267.5, 326.8, fill="#8D7B66", outline="#8D7B66", width=1)
        canvas.create_polygon(283, 333, 262.8, 359.4, 256.8, 349.2, 262.5, 336, fill="#4D3930", outline="#4D3930", width=1)
        b3 = Button(canvas, text="ocultar-David Mendoza", command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)
        v1.deiconify()
    elif num == 14:
        poligono = Canvas(v1, width=1000, height=1000, bg='white')
        poligono.pack(expand=YES, fill=BOTH)
        poligono.create_polygon((200, 400), (100, 500), (100, 600), (200, 500), (300, 600), (300, 500), (200, 400),
                                (300, 300), fill="green", outline="brown", width=2)
        poligono.create_polygon((200, 200), (300, 100), (500, 100), (500, 300), (400, 400), (300, 300), fill="red",
                                outline="brown", width=2)
        b3 = Button(poligono, text="ocultar-Edgar Emanuel", command=lambda: ejecutar(ocultar(v1)))
        b3.grid(row=1, column=3)
        v1.deiconify()
    elif num == 15:
        figura = Canvas(v1, width=500, height=500, bg='white')
        figura.pack(expand=YES, fill=BOTH)
        puntos = [226, 42, 198, 42, 170, 50, 141, 71, 127, 60, 108, 52, 94, 57, 85, 71, 85, 85, 95, 99, 108, 106, 120,
                  109, 127, 113, 127, 123, 142, 119, 161, 119, 178, 122, 189, 134, 192, 148, 189, 161, 176, 166, 160,
                  165, 142, 162, 156, 178, 170, 192, 192, 198, 207, 198, 198, 212, 170, 209, 151, 205, 132, 202, 113,
                  195, 108, 180, 99, 164, 80, 153, 57, 156, 38, 170, 34, 183, 35, 198, 42, 212, 56, 221, 71, 226, 85,
                  221, 104, 212, 127, 223, 152, 226, 175, 232, 189, 234, 184, 250, 184, 270, 184, 283, 190, 297, 196,
                  306, 184, 321, 180, 334, 178, 346, 180, 353, 188, 372, 212, 390, 194, 402, 181, 411, 170, 425, 170,
                  443, 176, 456, 190, 467, 208, 468, 227, 456, 275, 419, 276, 404, 269, 393, 252, 383, 236, 382, 221,
                  371, 206, 361, 201, 350, 203, 340, 209, 333, 221, 326, 237, 326, 255, 322, 270, 314, 280, 305, 297,
                  291, 311, 288, 335, 288, 354, 293, 368, 301, 378, 311, 386, 326, 403, 330, 411, 330, 462, 265, 461,
                  240, 450, 230, 435, 226, 421, 226, 406, 230, 396, 240, 380, 270, 354, 265, 332, 260, 311, 263, 297,
                  263, 283, 263, 278, 250, 264, 226, 283, 226, 297, 221, 312, 212, 330, 198, 346, 198, 363, 198, 375,
                  188, 382, 175, 386, 160, 382, 141, 362, 127, 334, 127, 326, 133, 312, 148, 312, 163, 315, 180, 304,
                  192, 290, 204, 273, 206, 255, 205, 241, 204, 234, 198, 255, 189, 269, 180, 278, 166, 286, 151, 291,
                  132, 292, 113, 289, 99, 283, 85, 280, 74, 269, 63, 255, 51, 234, 42]
        figura.create_polygon(puntos, fill="black", outline="white", width=6)
        b4 = Button(figura, text="Cerrar-Ricardo Castillo", command=lambda: v1.destroy())
        b4.pack()
    elif num == 16:
        canvas = Canvas(v1, width=300, height=200, bg='white')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(
            15, 18,
            180, 17.4,
            180, 180,
            129.8, 179.4,
            130.2, 114.2,
            151, 114,
            151.2, 92.6,
            129.8, 91.6,
            129.6, 72.4,
            132.6, 68.2,
            135.6, 65.2,
            140, 64.2,
            153.4, 63.8,
            153, 44.2,
            128, 43.2,
            122, 44.2,
            117.4, 46.8,
            114.2, 50.8,
            110.8, 53.4,
            108.8, 57.4,
            106.4, 62.4,
            105.8, 67,
            106.4, 92,
            84.8, 92.2,
            85, 113.8,
            105.6, 114.2,
            105.8, 179.4,
            15.2, 180,
            fill="lightblue", outline="blue", width=6)
        b4 = Button(canvas, text="Cerrar-Juan Rodolfo", command=lambda: v1.destroy())
        b4.pack()
    elif num == 17:
        corazon = Canvas(v1, width=210, height=210, bg='white')
        corazon.pack(expand=YES, fill=BOTH)
        corazon.create_polygon(300, 300, 400, 200, 500, 200, 600, 300, 700, 200, 800, 200, 900, 300, 878, 395, 600, 700,
                               325, 401, fill="red", outline="brown", width=6)
        b4 = Button(corazon, text="Cerrar-Vega jerez Uriel Antonio", command=lambda: v1.destroy())
        b4.pack()
    elif num == 18:
        poly = Canvas(v1, width=210, heigh=210, bg='White')
        poly.pack(expand=YES, fill=BOTH)
        poly.create_polygon(50, 20, 100, 20, 100, 30, 130, 30, 130, 40, 110, 40, 110, 50, 130, 50, 130, 60, 140, 60,
                            140, 70, 130, 70, 130, 80, 120, 80, 120, 90, 100, 90, 100, 100, 130, 100, 130, 110, 140,
                            110, 140, 150, 120, 150, 120, 160, 130, 160, 130, 170, 140, 170, 140, 180, 100, 180, 100,
                            160, 90, 160, 90, 150, 70, 150, 70, 160, 60, 160, 60, 180, 20, 180, 20, 170, 30, 170, 30,
                            160, 40, 160, 40, 150, 20, 150, 20, 110, 30, 110, 30, 100, 40, 100, 40, 90, 50, 90, 50, 80,
                            30, 80, 30, 50, 40, 50, 40, 30, 50, 30, fill="red", outline='white')

        b4 = Button( poly, text="Cerrar-Guzman Jaramillo Jonathan Iván ", command=lambda: v1.destroy())
        b4.pack()
    elif num == 19:
        caballo = Canvas(v1, width=200, height=10, bg="black")
        caballo.pack(expand=YES, fill=BOTH)
        caballo.create_polygon(80, 10, 110, 40, 40, 100, 60, 100, 20, 140, 40, 140, 10, 190, 30, 190, 20, 220,
                               50, 200, 60, 220, 40, 260, 140, 240, 190, 210, 170, 190, 150, 140, 160, 140,
                               190, 150, 200, 150, 220, 140, 210, 110, 180, 80, 180, 70, 150, 30, 140, 30,
                               120, 4, 120, 30, 80, 10, fill="blue", outline="white", width=3)
        salir = Button(caballo, text="ocultar-Guzmán Rubio Carlos Ernesto ", command=lambda: ejecutar(ocultar(v1)))
        salir.grid(row=1, column=1)
def ocultar(ventana):ventana.destroy()
def ejecutar(f): v0.after(200, f)
b1 = Button(v0, text="Abrir ventana con Circulo", command=lambda: ejecutar(mostrar(1)) )
b1.grid(row=1, column=1)
b3 = Button(v0, text="Abrir ventana con cuadrado", command=lambda: ejecutar(mostrar(2)))
b3.grid(row=1, column=2)
b3 = Button(v0, text="Abrir ventana con linea", command=lambda: ejecutar(mostrar(3)))
b3.grid(row=1, column=3)
b4 = Button(v0, text="Abrir ventana con arco", command=lambda: ejecutar(mostrar(4)))
b4.grid(row=1, column=4)
b5 = Button(v0, text="Abrir ventana con quesito", command=lambda: ejecutar(mostrar(5)))
b5.grid(row=1, column=5)
b6 = Button(v0, text="Abrir ventana con quesito y arco", command=lambda: ejecutar(mostrar(6)))
b6.grid(row=1, column=6)
b7 = Button(v0, text="Abrir ventana con texto", command=lambda: ejecutar(mostrar(7)))
b7.grid(row=1, column=7)
b8 = Button(v0, text="Abrir ventana con poligono", command=lambda: ejecutar(mostrar(8)))
b8.grid(row=1, column=8)
b9 = Button(v0, text="Abrir ventana con poligono gato", command=lambda: ejecutar(mostrar(9)))
b9.grid(row=1, column=9)
b10 = Button(v0, text="Abrir ventana con poligono estrella", command=lambda: ejecutar(mostrar(10)))
b10.grid(row=2, column=1)
b11 = Button(v0, text="Abrir ventana con poligono perro", command=lambda: ejecutar(mostrar(11)))
b11.grid(row=2, column=2)
b12 = Button(v0, text="Abrir ventana con poligono conejo", command=lambda: ejecutar(mostrar(12)))
b12.grid(row=2, column=3)
b13 = Button(v0, text="Abrir ventana con poligono antilope", command=lambda: ejecutar(mostrar(13)))
b13.grid(row=2, column=4)
b14 = Button(v0, text="Abrir ventana con poligono manzana", command=lambda: ejecutar(mostrar(14)))
b14.grid(row=2, column=5)
b15 = Button(v0, text="Abrir ventana con poligono monito", command=lambda: ejecutar(mostrar(15)))
b15.grid(row=2, column=6)
b16 = Button(v0, text="Abrir ventana con poligono facebook", command=lambda: ejecutar(mostrar(16)))
b16.grid(row=2, column=7)
b17 = Button(v0, text="Abrir ventana con poligono Corazon", command=lambda: ejecutar(mostrar(17)))
b17.grid(row=2, column=8)
b18 = Button(v0, text="Abrir ventana con poligono Mario", command=lambda: ejecutar(mostrar(18)))
b18.grid(row=2, column=9)
b19 = Button(v0, text="Abrir ventana con poligono Caballo", command=lambda: ejecutar(mostrar(19)))
b19.grid(row=3, column=1)
v0.mainloop()

Programa con funciones 
#-*- coding: utf-8 -*-
from Tkinter import  *

ventanaPrincipal = Tk()  # Tk() Es la ventana principal
ventanaPrincipal.title("Ventana principal") # Título de la ventana
ventanaPrincipal.config(bg="orange")  # Le da color al fondo
ventanaPrincipal.geometry("860x400")  # Cambia el tamaño de la ventana

def ventanaH():
    ventanaHija = Toplevel(ventanaPrincipal)
    ventanaHija.title("Ventana hija")
    ventanaHija.protocol("WM_DELETE_WINDOW", "onexit")
    return ventanaHija


def ejecutar(f):
    ventanaPrincipal.after(200, f)  # Una forma de ejecutar las funciones


def circulo():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=210, height=210,bg='red')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_oval(10, 10, 200, 200, width=3, fill='blue')  # Coordenadas y características de la figura

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def rectangulo():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=210, height=210,bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_rectangle(10, 10, 200, 200, width=5, fill='yellow')  # Coordenadas y características de la figura

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def lineas():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=210, height=210,bg='gray')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_line(0, 200, 200, 0, width=10, fill='purple')  # Coordenadas y características de la figura

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def quesito():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=300, height=200, bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_arc(10, 10, 190, 190, width=3, start=270, extent=90, fill='pink')  # Coordenadas y características de la figura

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def arco():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width =300, height=200, bg='gray')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_arc(10, 10, 190, 190, width=3, start=0, extent=270, fill='yellow')  # Coordenadas y características de la figura

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def pastel():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=300, height=300, bg='gray')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_arc(10, 10, 190, 190, width=3, start=0, extent=270, fill='orange')  # Coordenadas y características de la figura
    figura.create_arc(20, 20, 200, 200, width=3, start=270, extent=90, fill='brown')

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def texto():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=400, height=300, bg='yellow')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_text(160,100,fill="purple",font="Times 30 italic bold",text="Texto\n hecho en python.")

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


def poligono():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=400, height=300,bg='gray')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    figura.create_polygon(40, 40, 40, 140, 140, 140, 140, 100,fill="orange", outline="brown", width=6)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()

def letras():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=400, height=300, bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    puntosFigura1 = [40, 40, 40, 200, 60, 200, 60, 80, 100, 160, 140, 80, 140, 200, 160, 200, 160, 40, 140, 40, 100, 120, 60, 40]
    figura.create_polygon(puntosFigura1, fill="#006600", outline="black", width=6)

    puntosFigura2=[40, 40, 60, 40, 80, 100, 100, 40, 120, 40, 90, 120, 120, 200, 100, 200, 80, 140, 60, 200, 40, 200, 70, 120]
    for i  in range(0,len(puntosFigura2)):
        if(i%2==0):
            puntosFigura2[i] +=140
    figura.create_polygon(puntosFigura2, fill="red", outline="black", width=6)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()

def conejo():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=600, height=300,
                  bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    puntosFigura1 = [382.6, 54.5,
                     339.07, 56.3,
                     311.48, 99.02,
                     284.55, 99.02,
                     284.78, 141.74,
                     334.62, 141.74,
                     336.4, 180.91,
                     313.26, 212.95,
                     339.96, 240.54,
                     338.18, 212.06,
                     375.56, 254.78,
                     355, 286,
                     384.46, 302.84,
                     454.78, 303.73,
                     456.56, 210.28,
                     347.97, 113.26,
                     340.85, 97.24]
    for i in range(0, len(puntosFigura1)):
        puntosFigura1[i] -= 40
    figura.create_polygon(puntosFigura1, fill="pink", outline="black", width=4)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()

def estrella():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=300, height=300,
                  bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    puntosFigura1 = [130,20,
                     150,90,
                     210,90,
                     160,130,
                     180,200,
                     130,160,
                     80,200,
                     100,130,
                     50,90,
                     110,90]
    for i in range(0, len(puntosFigura1)):
        puntosFigura1[i] += 30
    figura.create_polygon(puntosFigura1, fill="yellow", outline="black", width=4)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()

def perrito():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=300, height=300,
                  bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura
    puntosFigura1 = [37.29,21.55,
                     53.89,47.62,
                     31,80,
                     46.38,98.19,
                     76.8,83.97,
                     78.38,131.78,
                     97.34,132.17,
                     98.92,98.19,
                     135.67,97.4,
                     136.85,134.15,
                     155.03,133.75,
                     153.84,80.81,
                     175.57,24.32,
                     137.25,58.69,
                     78.78,61.45,
                     66.53,42.88]
    for i in range(0, len(puntosFigura1)):
        puntosFigura1[i] += 30
    figura.create_polygon(puntosFigura1, fill="brown", outline="black", width=4)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()

def animal1():
    ventana = ventanaH()
    ventana.deiconify()
    figura = Canvas(ventana)
    figura.config(width=400, height=600, bg='white')  # Lienzo con las medidas y color sobre el que se dibujará la figura
    figura.pack(expand=YES, fill=BOTH)  # Sirve para cargar la figura

    figura.create_polygon(52.5,14.5,37,59.1,51,59.1, fill="#5C554E", outline="#5C554E", width=1)
    figura.create_polygon(19.3, 56.8,58,59.1,67,91,37.5,83, fill="#C3BAB5", outline="#C3BAB5", width=1)
    figura.create_polygon(58, 57.8, 78, 77, 71, 103, fill="#D4CCC1", outline="#D4CCC1", width=1)
    figura.create_polygon(37.5, 83,67.4,91,71,103, fill="#998C8A", outline="#998C8A", width=1)
    figura.create_polygon(71, 103, 71,104.8, 59.1,104.8,53.2,91,fill="#665B57", outline="#665B57", width=1)

    figura.create_polygon(86,105.6,98.2,148.6,47,133.6,24.2,103.6, fill="#C3BAB5", outline="#C3BAB5", width=1)
    figura.create_polygon(98.2, 148.6,102,165.2, 47,133.6, fill="#9B8D8A", outline="#9B8D8A", width=1)
    figura.create_polygon(86,105.6,124,169, 120,196,110.8,196, fill="#D5CDC2", outline="#D5CDC2", width=1)
    figura.create_polygon(102,165.2,110.8,196,99,196,80.6,153, fill="#605550", outline="#605550", width=1)

    figura.create_polygon(139.5, 197, 147, 241, 71, 220.4, 46, 193, fill="#C3BAB5", outline="#C3BAB5", width=1)
    figura.create_polygon(147, 241, 150, 261.4, 71, 220.4, fill="#968B87", outline="#968B87", width=1)
    figura.create_polygon(139.5, 197, 193, 274.2, 189, 307.8, 176, 321, 161.6, 321, fill="#D4CCC1", outline="#D4CCC1",width=1)
    figura.create_polygon(150, 261.4, 161.6, 321, 126.8, 249, fill="#605551", outline="#605551", width=1)

    figura.create_polygon(199.4,307.8,189,307.8, 176,321,186.6,461,184,448.8,171,479.5,199.4,503,fill="#C2AD9C", outline="#C2AD9C", width=1)
    figura.create_polygon(176, 321, 161.6, 321,186.6,461,fill="#615652", outline="#615652", width=1)
    figura.create_polygon(161.6, 321, 136, 359.4,177.2,409,fill="#D9C6B7", outline="#D9C6B7", width=1)
    figura.create_polygon(144.4,369.8, 139.6,384.6,160,389.4,fill="#443232", outline="#443232", width=1)
    figura.create_polygon(139.6, 384.6, 160, 389.4,177.2,409,169.2,450, fill="#826E65", outline="#826E65", width=1)
    figura.create_polygon(171,479.5,180.6,497.8,191.2,496.8, fill="#463334", outline="#463334", width=1)
    figura.create_polygon(177.2, 409,164.8,475,176.5,511,199.4,522,199.4,502.8,191.2,496.8,180.6,497.8,171,479.5,184,448.8, fill="#9B7F79", outline="#9B7F79", width=1)

    figura.create_polygon(151.8,335.4,109.6,280,142.2,349.2, fill="#5F5150", outline="#5F5150", width=1)
    figura.create_polygon(109.6, 280, 70.3,266,94.3,329,131.3,326, fill="#483636", outline="#483636", width=1)
    figura.create_polygon(94.3, 329,137,336,132,326.8, fill="#C2AF9D", outline="#C2AF9D", width=1)
    figura.create_polygon(115, 333, 136, 359.4, 142.2,349.2,137,336, fill="#826E65", outline="#826E65", width=1)

    #Lado inverso
    figura.create_polygon(346.5, 14.5,347.5,59.1,361,59.1, fill="#2E2621", outline="#2E2621", width=1)
    figura.create_polygon(379.4, 56.8, 341.8, 59.1, 332, 91, 361, 83, fill="#908782", outline="#908782", width=1)
    figura.create_polygon(341.5, 57.8, 324, 75, 327.6, 103, fill="#A29B8F", outline="#A29B8F", width=1)
    figura.create_polygon(361, 83, 332.4, 91, 329, 103, fill="#685D59", outline="#685D59", width=1)
    figura.create_polygon(329, 103, 326.8, 104.8, 340, 104.8, 345.6, 91, fill="#2D2220", outline="#2D2220", width=1)

    figura.create_polygon(313, 105.6, 301, 148.6, 352, 133.6, 374.5, 103.6, fill="#908782", outline="#908782", width=1)
    figura.create_polygon(301, 148.6, 297, 165.2, 352, 133.6, fill="#625755", outline="#625755", width=1)
    figura.create_polygon(313, 105.6, 274, 169,279, 196, 288, 196, fill="#A1998E", outline="#A1998E", width=1)
    figura.create_polygon(297, 165.2, 288, 196,300,196, 318, 153, fill="#2D221E", outline="#2D221E", width=1)

    figura.create_polygon(260,197,252,241,331,220.4,352.4,193, fill="#908782", outline="#908782", width=1)
    figura.create_polygon(252, 241, 249, 261.4, 331,220.4, fill="#645955", outline="#645955", width=1)
    figura.create_polygon(260, 197, 205,274.2, 209.8,307.8,223,321,238,321, fill="#A1998E", outline="#A1998E", width=1)
    figura.create_polygon(249, 261.4,238.6,321,271.8,249, fill="#2D221E", outline="#2D221E", width=1)

    figura.create_polygon(199.4, 307.8, 209.8,307.8, 223,321, 212.6, 461, 215, 448.8, 228, 479.5, 199.4, 503,fill="#8E7968", outline="#8E7968", width=1)
    figura.create_polygon(223, 321, 238.6,321, 212.6, 461, fill="#302722", outline="#302722", width=1)
    figura.create_polygon(238, 321, 262.8, 359.4, 222.5, 409, fill="#A69384", outline="#A69384", width=1)
    figura.create_polygon(254.4, 369.8, 259.6, 384.6, 238, 389.4, fill="#120001", outline="#120001", width=1)
    figura.create_polygon(259.6, 384.6, 238, 389.4, 222.5, 409, 229.5, 450, fill="#4F3B32", outline="#4F3B32", width=1)
    figura.create_polygon(228, 479.5, 218.3, 497.8, 207.5, 496.8, fill="#180A04", outline="#180A04", width=1)
    figura.create_polygon(222.5, 409, 234, 475, 223, 511, 199.4, 522, 199.4, 502.8, 207.5, 496.8, 218.3, 497.8, 228,
                          479.5, 215, 448.8, fill="#674C45", outline="#674C45", width=1)

    figura.create_polygon(247, 335.4, 290.6, 280, 256.8, 349.2, fill="#281F1D", outline="#281F1D", width=1)
    figura.create_polygon(290.6, 280, 328, 266, 304.8, 329, 267.5, 326, fill="#140202", outline="#140202", width=1)
    figura.create_polygon(304.8, 329, 262.5, 336, 267.5, 326.8, fill="#8D7B66", outline="#8D7B66", width=1)
    figura.create_polygon(283, 333, 262.8, 359.4, 256.8, 349.2, 262.5, 336, fill="#4D3930", outline="#4D3930", width=1)

    botonVentanaHija = Button(ventana, text="Cerrar", command=lambda: ejecutar(ventana.destroy()))
    botonVentanaHija.pack()


botonCirculo = Button(ventanaPrincipal, text="Mostrar circulo", command=lambda: ejecutar (circulo()))  # Primer boton
botonCirculo.grid (row=1, column=1)  # El botón es cargado

botonRectangulo = Button(ventanaPrincipal, text="Mostrar rectangulo", command=lambda: ejecutar (rectangulo()))  # Primer boton
botonRectangulo.grid (row=1, column=2)  # El botón es cargado

botonLineas = Button(ventanaPrincipal, text="Mostrar linea", command=lambda: ejecutar (lineas()))  # Primer boton
botonLineas.grid (row=1, column=3)  # El botón es cargado

botonQuesito = Button(ventanaPrincipal, text="Mostrar quesito", command=lambda: ejecutar (quesito()))  # Primer boton
botonQuesito.grid (row=1, column=4)  # El botón es cargado

botonArco = Button(ventanaPrincipal, text="Mostrar arco", command=lambda: ejecutar (arco()))  # Primer boton
botonArco.grid (row=1, column=5)  # El botón es cargado

botonPastel = Button(ventanaPrincipal, text="Mostrar pastel", command=lambda: ejecutar (pastel()))  # Primer boton
botonPastel.grid (row=1, column=6)  # El botón es cargado

botonTexto = Button(ventanaPrincipal, text="Mostrar texto", command=lambda: ejecutar (texto()))  # Primer boton
botonTexto.grid (row=1, column=7)  # El botón es cargado

botonPoligono = Button(ventanaPrincipal, text="Mostrar poligono", command=lambda: ejecutar (poligono()))  # Primer boton
botonPoligono.grid (row=2, column=1)  # El botón es cargado

botonPoligono = Button(ventanaPrincipal, text="Mostrar letras", command=lambda: ejecutar (letras()))  # Primer boton
botonPoligono.grid (row=2, column=2)  # El botón es cargado

botonPoligono2 = Button(ventanaPrincipal, text="Conejo", command=lambda: ejecutar (conejo()))  # Primer boton
botonPoligono2.grid (row=2, column=3)  # El botón es cargado

botonPoligono3 = Button(ventanaPrincipal, text="Estrella", command=lambda: ejecutar (estrella()))  # Primer boton
botonPoligono3.grid (row=2, column=4)  # El botón es cargado

botonPoligono4 = Button(ventanaPrincipal, text="Perrito", command=lambda: ejecutar (perrito()))  # Primer boton
botonPoligono4.grid (row=2, column=5)  # El botón es cargado

botonPoligono4 = Button(ventanaPrincipal, text="Antílope", command=lambda: ejecutar (animal1()))  # Primer boton
botonPoligono4.grid (row=2, column=6)  # El botón es cargado

ventanaPrincipal.mainloop() 


Imagenes: