Programas


Primeros programas con Python en cmd, recuerda que para editar o crear estos programas puedes realizarlos mediante blog de notas o en caso mas especial descarga el editor de texto para lenguajes de programación Notepad++, aquí abajo te dejo el link de la pagina oficial y puedas descargarlo.

Si quieres ver mas programas y aprender mas, dejo los enlaces de paginas que te puedan interesar:

- Ejemplos de Python:

- Como Programar en Python:


  • Empezamos con nuestro primer ejercicio: 


- 1. Verificar la edad establecida:

#encoding: utf-8
edad = 30

if edad >= 0 and edad < 18:
 print "eres un niño"
elif edad >= 18 and edad < 27:
 print "Eres un joven"
elif edad >= 27 and edad < 60:
 print "Eres un adulto"
else:

 print "Eres de la tercera edad"

- Resultado:






2.Uso de los Bucles: 

edad = 0
while edad <= 20:
 print "tienes : " + str(edad)

 edad = edad + 1

---------------------------
edad = 0

while edad <= 20:
  
 if edad == 15:
  edad = edad + 1
  continue
  
 print "tienes : " + str(edad)

 edad = edad + 1

Nota: Realizan la misma función pero en diferente sintaxis.

Bucle 1:




 Bucle 2:




3. Uso de las librerías:

#uso de libreria datetime

import datetime

print (datetime.datetime.now())





4. Uso del Random (1):

import random
import random

# valor = random.randint(0,10)

lista = ["uno", "dos", 23,"cuatro"]
print lista
random.shuffle(lista)
print(lista)





5. Uso del Random (2):

import random

valor = random.randint(0,10)

print(valor)





6. Uso Librerías Sys:


import sys
import time
for i in range(100):
 time.sleep(0.5)

 sys.stdout.write("Texto")





7. Uso Librerías Sys (2):

import sys
import time
for i in range(100):
 time.sleep(0.5)

 sys.stdout.write("\r%d %%" % i)





Programa especial:

Elaborar un programa que proyecte 3 figuras en pantalla usando Notepad++ y ejecutado en Python.

Código:


- Circulo: 



from Tkinter import *
root = Tk()
root.title('Ejemplo')
circulo = Canvas(width=210, height=210, bg='white')
circulo.pack(expand=YES, fill=BOTH)
circulo.create_oval(10, 10, 200, 200, width=5, fill='blue')
root.mainloop()



- Rectángulo:
from Tkinter import *
root = Tk()
root.title('Ejemplo')
rectangulo = Canvas(width=210, height=210, bg='white')
rectangulo.pack(expand=YES, fill=BOTH)
rectangulo.create_rectangle(10, 10, 200, 200, width=5, fill='yellow')
root.mainloop()


- Lineas:

from Tkinter import *
root = Tk()
root.title('Ejemplo')


linea = Canvas(width=210, height=210, bg='white')
linea.pack(expand=YES, fill=BOTH)
linea.create_line(0, 200, 200, 0, width=10, fill='black')
linea.create_line(0, 0, 200, 200, width=10, fill='black')

root.mainloop()







Enlace de ayuda:


http://gmendezm.blogspot.mx/2012/12/tutorial-tkinter-python-gui.html




- Importando el módulo:


Para importar un módulo en Python escribimos


import nombredelmodulo


Otra forma de hacerlo es


from nombredelmodulo import *


Esto no les va a devolver nada porque el modulo nombre del modulo no existe. Pero básicamente estas son las formas que se usan más.


- Ventanas


Las ventanas se pueden configurar de diferentes formas. Veamos un ejemplo de una ventana.


Ejemplo 1:


from Tkinter import * # Importa el módulo

v0 = Tk() # Tk() Es la ventana principal



v0.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.


Esto nos lanza una ventana normal.




Ejemplo 2:


Ahora para colocarle fondo a la ventana sería:


from Tkinter import * # Importa el módulo


v0 = Tk() # Tk() Es la ventana principal
v0.config(bg="black") # Le da color al fondo


v0.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.





Ejemplo 3:
Vamos a crear una ventana de tipo Toplevel. En Python ocurre algo curioso, todas las ventanas creadas se abren al mismo tiempo. Por eso cuando creamos una ventana del tipo Toplevel, debemos ocultarla. Veamos un ejemplo:

from Tkinter import * # Importa el módulo
v0 = Tk() # Tk() Es la ventana principal
v0.config(bg="red") # Le da color al fondo
v0.geometry("500x500") # Cambia el tamaño de la ventana
v1=Toplevel(v0) # Crea una ventana hija
v0.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.


Ejemplo 4:
""" Ejemplo 4 """
""" Vamos a crear una ventana de tipo Toplevel. En Python ocurre algo curioso, todas las ventanas creadas se abren al mismo tiempo. Por eso cuando creamos una ventana del tipo Toplevel, debemos ocultarla. """
from Tkinter import *
v0 = Tk()
v0.config(bg="black")
v0.geometry("500x500")
v1=Toplevel(v0)
v0.mainloop()



Ejemplo 5: 
""" Ejemplo 5 """
""" Crear una ventana mostrando dos botones, el cual muestre uno y oculte la otra ventana sin que permanezcan las dos abiertas """
from Tkinter import *
v0 = Tk()
v1=Toplevel(v0)
def mostrar(ventana): ventana.deiconify()
def ocultar(ventana):ventana.withdraw()
def ejecutar(f): v0.after(200,f)
v0.config(bg="black")
v0.geometry("500x500")
b1=Button(v0,text="ABRIR VENTANA V1",command=lambda: ejecutar(mostrar(v1)))
b1.grid(row=1,column=1)
b2=Button(v0,text="OCULTAR VENTANA V1",command=lambda: ejecutar(ocultar(v1)))
b2.grid(row=1,column=2)
v1.withdraw()
v0.mainloop() 


Código actualizado:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
""" Ejemplo 5 """
""" Crear una ventana mostrando dos botones, el cual muestre uno y oculte la otra ventana sin que permanezcan las dos abiertas """

from Tkinter import *
ventanapri = Tk()
ventanasec=Toplevel(ventanapri)
def mostrar(ventana): ventana.deiconify()
def ocultar(ventana):ventana.withdraw()
def ejecutar(f): ventanapri.after(200,f)
def centrar(ventana):
ventana.update_idletasks()
w=ventana.winfo_width()
h=ventana.winfo_height()
extraW=ventana.winfo_screenwidth()-w
extraH=ventana.winfo_screenheight()-h
ventana.geometry("%dx%d%+d%+d" % (w,h,extraW/2,extraH/2))
ventanapri.config(bg="black")
ventanapri.geometry("500x500")
b1=Button(ventanapri,text="ABRIR VENTANA V1",command=lambda: ejecutar(mostrar(ventanasec)))
b1.grid(row=1,column=1)
b2=Button(ventanapri,text="OCULTAR VENTANA V1",command=lambda: ejecutar(ocultar(ventanasec)))
b2.grid(row=1,column=2)
b3=Button(ventanapri,text="CENTRAR VENTANA 1",command=lambda: ejecutar(centrar(ventanasec)))
b3.grid(row=1,column=3)
b4=Button(ventanapri,text="CERRAR PROGRAMA",command=lambda: ejecutar(exit(ventanapri)))
b4.grid(row=1,column=4)
ventanasec.withdraw()
ventanapri.mainloop()




--------------------------------------------------
Ejemplo 6(9):


Ahora, no sé si lo habrán notado, pero cuando cerramos la ventana, tira error, pero cuando la ocultamos no nos da error. Yo la solución que le encontré a esto, fue quitando la opción de cerrar ventana, y colocando un botón salir en cada ventana.


Para realizar eso se hace lo siguiente:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from Tkinter import * # Importa el módulo

ventanaprincipal = Tk() # Tk() Es la ventana principal
ventanaprincipal.title("Ventana Primaria")
ventanasechija = Toplevel(ventanaprincipal) # Crea una ventana hija
ventanasechija.title("Segunda Ventana")
ventanasechija.config(bg="Red") # Le da color al fondo

ventanasechija.geometry("500x500") # Cambia el tamaño de la ventana

ventanasechija.protocol("WM_DELETE_WINDOW", "onexit") # Elimina la opción de salir para evitar el error


def mostrar(ventana): ventana.deiconify() # Muestra una ventana


def ocultar(ventana): ventana.withdraw() # Oculta una ventana


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


def imprimir(texto): print texto # Imprime un texto


ventanaprincipal.config(bg="Black") # Le da color al fondo
ventanaprincipal.geometry("500x500") # Cambia el tamaño de la ventana

b1 = Button(ventanaprincipal, text="ABRIR VENTANA V1", command=lambda: ejecutar(mostrar(ventanasechija)) or imprimir("hola") or imprimir("tercera función")) # Primer botón
b1.grid(row=1, column=1) # El botón es cargado


b2 = Button(ventanasechija, text="OCULTAR VENTANA V1", command=lambda: ejecutar(ocultar(ventanasechija))) # Segundo botón
b2.grid(row=1, column=2) # El botón es cargado

b3 = Button(ventanaprincipal, text="SALIR", command=lambda: ejecutar(ocultar(ventanasechija)))
b3.grid(row=1, column=3) # El botón es cargado

ventanasechija.withdraw() # Oculta la ventana v1
ventanaprincipal.mainloop() # Es el evento que llama al inicio de nuestro programa. Siempre lo lleva la ventana principal.





Ejemplo 7(10):

Programa que abra una ventana y muestre una de las tres figuras. 

Código del programa: (Circulo)

from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="green") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("500x500")

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


def circulo(ventana):
circulo = Canvas(width=210, height=210, bg='red') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color 
circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura circulo.create_oval(10, 10, 200, 200, width=3, fill='blue') # radio,
circulo.pack(expand=YES, fill=BOTH)
circulo.create_oval(10, 10, 200, 200, width=5, fill='blue')

botoncir = Button(ventana, text="ver circulo",command=lambda: ejecutar(circulo(ventana))) #Primer boton
botoncir.grid(row=3, column=15) # El botn es cargado
botoncir.grid(row=1, column=1)

ventana.mainloop()





Código del programa: (Rectángulo)



from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="blue") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("500x500")

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


def rectangulo(ventana):

rectangulo= Canvas(width=210, height=210, bg='red') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color 

circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura 

circulo.create_oval(10, 10, 200, 200, width=3, fill='blue') # radio,
rectangulo.pack(expand=YES, fill=BOTH)
rectangulo.create_rectangle(10, 10, 200, 200, width=5, fill='yellow')
botonrect = Button(ventana, text="ver cuadro",
command=lambda:
ejecutar(rectangulo(ventana))) # Primer boton
botonrect.grid(row=4, column=5) # El botn es cargado

ventana.mainloop()





Código del programa: (Linea)

from Tkinter import*
ventana = Tk() # Tk() Es la ventana principalventana.title("ventana de figura con boton")
ventana.config(bg="blue") # Le da color al fondoventana.geometry("500x500") # Cambia el tamao de la ventana
ventana.geometry("420x420")

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


def linea(ventana):
linea= Canvas(width=210, height=210, bg='red') # aqui se crea el cuadro blanco donde aparece nuestra figura con su ancho y largo que estableci y su color circulo.pack(expand=YES, fill=BOTH) # sierve para cargar la figura circulo.create_oval(10, 10, 200, 200, width=3, fill='blue') # radio,
linea.pack(expand=YES, fill=BOTH)
linea.create_line(0, 0, 420,420, width=10, fill='yellow')
botonline = Button(ventana, text="ver linea",
command=lambda:
ejecutar(linea(ventana))) # Primer boton
botonline.grid(row=4, column=5) # El botn es cargado

ventana.mainloop()



Ejemplo 8(11):

Programa que abra una ventana y muestre una de las tres figuras, mediante tres botones que muestren las figuras.

Código del programa: (Circulo, rectángulo, linea, y cuadrado).


# -*- coding: utf-8 -*-

from Tkinter import*

ventanap = Tk()
ventanap.config(bg="black")
ventanap.geometry("500x500")
ventanap.title("Hacer rectangulo")
ventanah = Toplevel(ventanap)
ventanah.protocol("WM_DELETE_WINDOW", "onexit")

def ejecutar(f):
ventanah.after(200, f)

def mostrar(ventana):
ventana.deiconify()

def rectangulo(ven):
ventanah.deiconify()
rectangulo = Canvas(ventanah,width=210, height=210, bg="yellow")
rectangulo.pack(expand=YES, fill=BOTH)
rectangulo.create_rectangle(10, 10, 200, 200, width=3, fill='orange')

def linea(ven):
ventanah.deiconify()
linea = Canvas(ventanah,width=210, height=210, bg="white")
linea.pack(expand=YES, fill=BOTH)
linea.create_line(5, 5, 200, 200, width=3, fill='black')

def ocultar(ventana):
ventanah.withdraw()

def circulo(ven):
ventanah.deiconify()
circulo = Canvas(ventanah,width=210, height=210, bg="red")
circulo.pack(expand=YES, fill=BOTH)
circulo.create_oval(10, 10, 200, 200, width=3, fill='blue')

boton2= Button(ventanah, text="Cerrar", command=lambda: ejecutar(ocultar(ventanah)))
boton2.pack()

botoncir = Button(ventanap, text="ver circulo",command=lambda: ejecutar (circulo(ventanap)))
botoncir.grid(row=1, column=1)

botonrec = Button(ventanap, text="ver rectangulo",command=lambda: ejecutar (rectangulo(ventanap)))
botonrec.grid(row=1, column=2)

botonlin = Button(ventanap, text="ver linea",command=lambda: ejecutar (linea(ventanap)))
botonlin.grid(row=1, column=3)

ventanah.withdraw()
ventanap.mainloop()



NOTA: La variación de colores puede variar según el gusto y configuración del usuario.



Ejemplo 9(12):

Figuras animadas con Python.

Código establecido para realizar una secuencia de figuras en python dando la forma de un mosaico de colores.

Código:

# turtle honeycomb
# Lasse Kosiol
# 1.9.2012
# python workshop opentechschool berlin

import turtle
from random import randint

size = 20
circles = 20
turtle.speed(100)

turtle.colormode(255)

def move(length, angle):
                turtle.right(angle)
                turtle.forward(length)

def hex():
        turtle.pendown()
        turtle.color( randint(0,255),randint(0,255),randint(0,255) )
        turtle.begin_fill()
        for i in range(6):
                move(size,-60)
        turtle.end_fill()
        turtle.penup()

# start
turtle.penup()

for circle in range (circles):
        if circle == 0:
                hex()
                move(size,-60)
                move(size,-60)
                move(size,-60)
                move(0,180)
        for i in range (6):
                move(0,60)
                for j in range (circle+1):
                        hex()
                        move(size,-60)
                        move(size,60)
                move(-size,0)
        move(-size,60)
        move(size,-120)
        move(0,60)

turtle.exitonclick()



PARA MAS PROGRAMAS DE ESTE TIPO, PUEDES VISITAR:

https://www.pythoniza.me/dibujos-con-python-turtle/



Ejemplo 10(13):

Jugo realizado por mi compañero Armando Monreal, el cual es la estructura del tradicional juego del gato para dos personas, en la plataforma de python, agregando mejoras al código y formas para interactuar con el usuario.

NOTA DE COMPAÑERO:

Vídeo donde se explica un poco las funciones que se hicieron en el juego (Aclaro el vídeo no es de mi autoria y muestran como hacerlo en python 3.x, yo solo lo pase a 2.7):


Código:

from Tkinter import *
import tkMessageBox
import tkSimpleDialog


def bloq():
    for i in range(0, 9):
        lisb[i].config(state="disable")


def inij():
    for i in range(0, 9):
        lisb[i].config(state="normal")
        lisb[i].config(bg="lightgray")
        lisb[i].config(text="")
        tab[i] = "N"
    global nomj1, nomj2  # indica a que variables queremos acceder
    nomj1 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 1: ")
    nomj2 = tkSimpleDialog.askstring("Jugador", "Escribe el nombre del jugador 2: ")
    turj.set("Turno: " + nomj1)


def cam(num):
    global turno, nomj1, nomj2
    if tab[num] == "N" and turno == 0:
        lisb[num].config(text="X")
        lisb[num].config(bg="white")
        tab[num] = "X"
        turno = 1
        turj.set("Turno: " + nomj2)
    elif tab[num] == "N" and turno == 1:
        lisb[num].config(text="O")
        lisb[num].config(bg="lightblue")
        tab[num] = "O"
        turno = 0
        turj.set("Turno: " + nomj1)
    lisb[num].config(state="disable")
    verif()


def verif():
    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"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    elif (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"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    elif (tab[0] == "X" and tab[4] == "X" and tab[8] == "X") or (tab[2] == "X" and tab[4] == "X" and tab[6] == "X"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj1)
    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"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)
    elif (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"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)
    elif (tab[0] == "O" and tab[4] == "O" and tab[8] == "O") or (tab[2] == "O" and tab[4] == "O" and tab[6] == "O"):
        bloq()
        tkMessageBox.showinfo("Ganaste", "Ganaste jugador: " + nomj2)


ven = Tk()
ven.geometry("370x460")
ven.title("Juego del gato")
turno = 0

nomj1 = ""
nomj2 = ""

lisb = []
tab = []
turj = StringVar()

for i in range(0, 9):
    tab.append("N")

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)
tue = Label(ven, textvariable=turj).place(x=140, y=10)
bini = Button(ven, bg='blue', fg='white', text='Iniciar juego', cursor="sizing", width=15, height=3,
              command=inij).place(x=130, y=360)
bloq()

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')

ven.mainloop()





Ejemplo 11(14):

Figura 2D corazón:



from turtle import *

def curvemove():
    for i in range(200):
        right(1)
        forward(1)


color('red', 'pink')
begin_fill()
left(140)
forward(111.65)
curvemove()
left(120)
curvemove()
forward(111.65)
end_fill()
done()


La librería turtle simplemente lo que hace es la creación de lineas a partir de los comandos que le vamos dando.






Ejemplo 12(15): (Actualizado)

Ejemplo 12(15):

Programa que abra una ventana y muestre una de las figuras establecida, mediante los botones nuevos que se agregaron y que muestren las figuras.

Código del programa: (Circulo, rectángulo, linea,cuadrado, quesito,arco y  figura completa).


# -*- coding: utf-8 -*-

from Tkinter import*

ventanap = Tk()
ventanap.config(bg="black")
ventanap.geometry("500x500")
ventanap.title("Crear Figuras")
ventanah = Toplevel(ventanap)
ventanah.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija1 = Toplevel(ventanap)
ventanahija1.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija2 = Toplevel(ventanap)
ventanahija2.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija3 = Toplevel(ventanap)
ventanahija3.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija4 = Toplevel(ventanap)
ventanahija4.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija5 = Toplevel(ventanap)
ventanahija5.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija6 = Toplevel(ventanap)
ventanahija6.protocol("WM_DELETE_WINDOW", "onexit")

def ejecutar(f):
    ventanah.after(200, f)

def mostrar(ventana):
    ventana.deiconify()

def rectangulo(ven):
    ventanahija2.deiconify()
    rectangulo = Canvas(ventanahija2,width=210, height=210, bg="white")
    rectangulo.pack(expand=YES, fill=BOTH)
    rectangulo.create_rectangle(10, 10, 200, 200, width=3, fill='pink')

def linea(ven):
    ventanahija3.deiconify()
    linea = Canvas(ventanahija3,width=210, height=210, bg="blue")
    linea.pack(expand=YES, fill=BOTH)
    linea.create_line(5, 5, 200, 200, width=3, fill='red')


def circulo(ven):
    ventanahija1.deiconify()
    circulo = Canvas(ventanahija1,width=210, height=210, bg="white")
    circulo.pack(expand=YES, fill=BOTH)
    circulo.create_oval(10, 10, 200, 200, width=3, fill='black')

def quesito(ven):
    ventanahija4.deiconify()
    quesito = Canvas(ventanahija4, width=210, height=210, bg='white')
    quesito.pack(expand=YES, fill=BOTH)
    quesito.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')

def arco(ven):
    ventanahija5.deiconify()
    arco = Canvas(ventanahija5, width=210, height=210, bg='white')
    arco.pack(expand=YES, fill=BOTH)
    xy = 10, 10, 190, 190
    arco.create_arc(xy, start=0, extent=270, fill='gray60')

def completo(ven):
    ventanahija6.deiconify()
    completo = Canvas(ventanahija6, width=210, height=210, bg='white')
    completo.pack(expand=YES, fill=BOTH)
    completo.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')
    xy = 10, 10, 190, 190
    completo.create_arc(xy, start=0, extent=270, fill='gray60')

def ocultar(ventana):
    ventana.withdraw()

boton1= Button(ventanah, text="Cerrar", command=lambda: ejecutar(ocultar(ventanah)))
boton1.pack()

boton2= Button(ventanahija1, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija1)))
boton2.pack()

boton3= Button(ventanahija2, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija2)))
boton3.pack()

boton4= Button(ventanahija3, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija3)))
boton4.pack()

boton5= Button(ventanahija4, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija4)))
boton5.pack()

boton6= Button(ventanahija5, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija5)))
boton6.pack()

boton7= Button(ventanahija6, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija6)))
boton7.pack()


botoncir = Button(ventanap, text="Ver Circulo",command=lambda: ejecutar (circulo(ventanahija1)))
botoncir.grid(row=1, column=1)

botonrec = Button(ventanap, text="Ver Rectangulo",command=lambda: ejecutar (rectangulo(ventanahija2)))
botonrec.grid(row=1, column=2)

botonlin = Button(ventanap, text="Ver Linea",command=lambda: ejecutar (linea(ventanahija3)))
botonlin.grid(row=1, column=3)

botonques = Button(ventanap, text="Ver Quesito",command=lambda: ejecutar (quesito(ventanahija4)))
botonques.grid(row=1, column=4)

botonarc = Button(ventanap, text="Ver Arco",command=lambda: ejecutar (arco(ventanahija5)))
botonarc.grid(row=1, column=5)

botoncomp = Button(ventanap, text="Ver Figura Completa",command=lambda: ejecutar (completo(ventanahija6)))
botoncomp.grid(row=1, column=6)

ventanah.withdraw()
ventanahija1.withdraw()
ventanahija2.withdraw()
ventanahija3.withdraw()
ventanahija4.withdraw()
ventanahija5.withdraw()
ventanahija6.withdraw()
ventanap.mainloop()




Ejemplo 13(16): (Actualizado)

Ejemplo 13(16):

Programa que abra una ventana y muestre una de las figuras establecida, mediante los botones nuevos que se agregaron y que muestren las figuras.

Código del programa: (Circulo, rectángulo, linea,cuadrado, quesito,arco y  figura completa, texto y polígono).


Código Actualizado:


# -*- coding: utf-8 -*-

from Tkinter import*

ventanap = Tk()
ventanap.config(bg="black")
ventanap.geometry("500x500")
ventanap.title("Crear Figuras")
ventanah = Toplevel(ventanap)
ventanah.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija1 = Toplevel(ventanap)
ventanahija1.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija2 = Toplevel(ventanap)
ventanahija2.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija3 = Toplevel(ventanap)
ventanahija3.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija4 = Toplevel(ventanap)
ventanahija4.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija5 = Toplevel(ventanap)
ventanahija5.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija6 = Toplevel(ventanap)
ventanahija6.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija7 = Toplevel(ventanap)
ventanahija7.protocol("WM_DELETE_WINDOW", "onexit")

ventanahija8 = Toplevel(ventanap)
ventanahija8.protocol("WM_DELETE_WINDOW", "onexit")

def ejecutar(f):
    ventanah.after(200, f)

def mostrar(ventana):
    ventana.deiconify()

def rectangulo(ven):
    ventanahija2.deiconify()
    rectangulo = Canvas(ventanahija2,width=210, height=210, bg="white")
    rectangulo.pack(expand=YES, fill=BOTH)
    rectangulo.create_rectangle(10, 10, 200, 200, width=3, fill='pink')

def linea(ven):
    ventanahija3.deiconify()
    linea = Canvas(ventanahija3,width=210, height=210, bg="blue")
    linea.pack(expand=YES, fill=BOTH)
    linea.create_line(5, 5, 200, 200, width=3, fill='red')


def circulo(ven):
    ventanahija1.deiconify()
    circulo = Canvas(ventanahija1,width=210, height=210, bg="white")
    circulo.pack(expand=YES, fill=BOTH)
    circulo.create_oval(10, 10, 200, 200, width=3, fill='black')

def quesito(ven):
    ventanahija4.deiconify()
    quesito = Canvas(ventanahija4, width=210, height=210, bg='white')
    quesito.pack(expand=YES, fill=BOTH)
    quesito.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')

def arco(ven):
    ventanahija5.deiconify()
    arco = Canvas(ventanahija5, width=210, height=210, bg='white')
    arco.pack(expand=YES, fill=BOTH)
    xy = 10, 10, 190, 190
    arco.create_arc(xy, start=0, extent=270, fill='gray60')

def completo(ven):
    ventanahija6.deiconify()
    completo = Canvas(ventanahija6, width=210, height=210, bg='white')
    completo.pack(expand=YES, fill=BOTH)
    completo.create_arc(10, 10, 190, 190, start=270, extent=90, fill='gray90')
    xy = 10, 10, 190, 190
    completo.create_arc(xy, start=0, extent=270, fill='gray60')

def texto(ven):
    ventanahija7.deiconify()
    texto = Canvas(ventanahija7, width=210, height=210, bg='yellow')
    texto.pack(expand=YES, fill=BOTH)
    texto.create_text(100,70,fill= "black",font="3dsClara",text="HOLA\nME LLAMO\nEdgar Mendez Ruiz\n")

def poligono(ven):
    ventanahija8.deiconify()
    poligono = Canvas(ventanahija8, width=700, height=600, 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)
def ocultar(ventana): ventana.withdraw() boton1= Button(ventanah, text="Cerrar", command=lambda: ejecutar(ocultar(ventanah))) boton1.pack() boton2= Button(ventanahija1, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija1))) boton2.pack() boton3= Button(ventanahija2, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija2))) boton3.pack() boton4= Button(ventanahija3, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija3))) boton4.pack() boton5= Button(ventanahija4, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija4))) boton5.pack() boton6= Button(ventanahija5, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija5))) boton6.pack() boton7= Button(ventanahija6, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija6))) boton7.pack() boton8= Button(ventanahija7, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija7))) boton8.pack() boton9= Button(ventanahija8, text="Cerrar", command=lambda: ejecutar(ocultar(ventanahija8))) boton9.pack() botoncir = Button(ventanap, text="Ver Circulo",command=lambda: ejecutar (circulo(ventanahija1))) botoncir.grid(row=1, column=1) botonrec = Button(ventanap, text="Ver Rectangulo",command=lambda: ejecutar (rectangulo(ventanahija2))) botonrec.grid(row=1, column=2) botonlin = Button(ventanap, text="Ver Linea",command=lambda: ejecutar (linea(ventanahija3))) botonlin.grid(row=1, column=3) botonques = Button(ventanap, text="Ver Quesito",command=lambda: ejecutar (quesito(ventanahija4))) botonques.grid(row=1, column=4) botonarc = Button(ventanap, text="Ver Arco",command=lambda: ejecutar (arco(ventanahija5))) botonarc.grid(row=1, column=5) botoncomp = Button(ventanap, text="Ver Figura Completa",command=lambda: ejecutar (completo(ventanahija6))) botoncomp.grid(row=1, column=6) botontext = Button(ventanap, text="Ver Texto",command=lambda: ejecutar (texto(ventanahija7))) botontext.grid(row=1, column=7) botonpol = Button(ventanap, text="Ver Poligono",command=lambda: ejecutar (poligono(ventanahija8))) botonpol.grid(row=1, column=8) ventanah.withdraw() ventanahija1.withdraw() ventanahija2.withdraw() ventanahija3.withdraw() ventanahija4.withdraw() ventanahija5.withdraw() ventanahija6.withdraw() ventanahija7.withdraw() ventanahija8.withdraw() ventanap.mainloop()


Ejemplo 13(16): (Actualización de Código)

# -*- coding: utf-8 -*-

from Tkinter import *
v0 = Tk()
v0.title("Bienvenido al Menu de Opciones")
v0.config(bg="black")
v0.geometry("700x500")


def mostrar(num):

    v1 = Toplevel(v0)
    v1.title("Ventana hija")
    v1.protocol("WM_DELETE_WINDOW", "onexit")
    v1.config(bg="gray")



    if  num == 1:

     v1.geometry("210x240")
     canvas = Canvas(v1, width=210, height=210, bg='white')
     canvas.pack(expand=YES, fill=BOTH)
     canvas.create_oval(10, 10, 200, 200, width=5, fill='blue')

     Boton1 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton1.pack()

    elif num == 2:

     v1.geometry("210x240")
     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')

     Boton2 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton2.pack()

    elif num == 3:

     v1.geometry("210x240")
     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')

     Boton3 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton3.pack()

    elif num == 4:

     v1.geometry("210x240")
     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')

     Boton4 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton4.pack()


    elif num == 5:

     v1.geometry("210x240")
     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')

     Boton5 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton5.pack()


    elif num == 6:

     v1.geometry("210x240")
     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')

     Boton6 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton6.pack()


    elif num == 7:

     v1.geometry("250x230")
     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 \nsoy Edgar Emmanuel")

     Boton7 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton7.pack()

    elif num == 8:

     v1.geometry("250x250")
     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)

     Boton8 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton8.pack()

    elif num == 9:

     v1.geometry("500x330")
     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)

     Boton9 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
     Boton9.pack()

    elif num == 10:

       v1.geometry("250x250")
       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="yellow", outline="black", width=3)

       Boton10 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
       Boton10.pack()

    elif num == 11:

        v1.geometry("230x230")
        canvas = Canvas(v1, width=300, height=200, bg='white')
        canvas.pack(expand=YES, fill=BOTH)
        canvas.create_polygon(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,
                              fill="lightblue", outline="brown", width=6)

        Boton11 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton11.pack()

    elif num == 12:

         v1.geometry("250x400")
         canvas = Canvas(v1, width=300, height=200, 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)

         Boton12 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
         Boton12.pack()

    elif num == 13:

        v1.geometry("400x570")
        canvas = Canvas(v1, width=300, height=300, bg='white')
        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)
        Boton13 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton13.pack()

    elif num == 14:

        v1.geometry("650x650")
        poligono = Canvas(v1, width=300, height=300, 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)

        Boton14 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton14.pack()


    elif num == 15:

        v1.geometry("500x550")
        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)

        Boton15 = Button(v1, text="Cerrar", command=lambda: ejecutar(ocultar(v1)))
        Boton15.pack()



def ocultar(ventana):ventana.destroy()
def ejecutar(f): v0.after(200, f)


b1 = Button(v0, text="01 Circulo", command=lambda: ejecutar(mostrar(1)) )
b1.grid(row=1, column=1)

b3 = Button(v0, text="02 Cuadrado", command=lambda: ejecutar(mostrar(2)))
b3.grid(row=1, column=2)

b3 = Button(v0, text="03 Lineas", command=lambda: ejecutar(mostrar(3)))
b3.grid(row=1, column=3)

b4 = Button(v0, text="04 Arco", command=lambda: ejecutar(mostrar(4)))
b4.grid(row=1, column=4)

b5 = Button(v0, text="05 Quesito", command=lambda: ejecutar(mostrar(5)))
b5.grid(row=1, column=5)

b6 = Button(v0, text="06 Quesito y Arco", command=lambda: ejecutar(mostrar(6)))
b6.grid(row=2, column=1)

b7 = Button(v0, text="07 Ventana Texto", command=lambda: ejecutar(mostrar(7)))
b7.grid(row=2, column=2)

b8 = Button(v0, text="08 Poligono #1", command=lambda: ejecutar(mostrar(8)))
b8.grid(row=2, column=3)

b9 = Button(v0, text="09 Poligono Gato", command=lambda: ejecutar(mostrar(9)))
b9.grid(row=2, column=4)

b10 = Button(v0, text="10 Poligono Estrella", command=lambda: ejecutar(mostrar(10)))
b10.grid(row=2, column=5)

b11 = Button(v0, text="11 Poligono Perro", command=lambda: ejecutar(mostrar(11)))
b11.grid(row=3, column=1)

b12 = Button(v0, text="12 Poligono Conejo", command=lambda: ejecutar(mostrar(12)))
b12.grid(row=3, column=2)

b13 = Button(v0, text="13 Poligono Antilope", command=lambda: ejecutar(mostrar(13)))
b13.grid(row=3, column=3)

b14 = Button(v0, text="14 Poligono Manzana", command=lambda: ejecutar(mostrar(14)))
b14.grid(row=3, column=4)

b15 = Button(v0, text="15 Poligono Monito", command=lambda: ejecutar(mostrar(15)))
b15.grid(row=3, column=5)

v0.mainloop()




Simbolo de paz
#!/usr/bin/env python3

from turtle import *

def main():
    reset()

    Screen()

    up()

    goto(-320, -195)

    width(70)

    width(25)

    color("Black")

    goto(0, -170)

    down()

    circle(170)

    left(90)

    forward(340)

    up()

    left(180)

    forward(170)

    right(45)

    down()

    forward(170)

    up()

    backward(170)

    left(90)

    down()

    forward(170)

    up()

    goto(0, 300)

    return "Done!"

if __name__ == "__main__":


    main()



    mainloop()

0 comentarios:

Publicar un comentario