Practicas en clase (#2 al #9)

2- Programa de Carlos (Archivos)


Código:


import sys
from Tkinter import *


# suma funcion

def sumafuncion():
    valor1 = int(entrada1.get())
    valor2 = int(entrada2.get())
    sumas = str(valor1 + valor2)
    Wonder = Label(ventana, text='el resultado es:' + sumas, fill="blue", font=("agency fb", 14)).place(x=40, y=150)


# funcion introducir datos

def introducirdatos():
    archivo = open('ejemplo1.csv', 'a')
    nombre = entrada1.get()
    apellido = entrada2.get()
    archivo.write(nombre + ',' + apellido + '\n')
    anadir = Label(ventana, text='se ha introducido el nombre ' + nombre + ' con el apellido : ' + apellido,
                   background="green", font=("agency fb", 14)).place(x=100, y=200)


def mostrardatos():
    archivo = open('ejemplo1.csv')
    add = Label(ventana, text='mostrar registros \n' + archivo.read(), background="blue", font=("agency fb", 14)).place(
        x=100, y=200)
    archivo.close()


def eliminardatos():
    archivo = open('ejemplo1.csv', 'a')
    archivo.truncate()
    elminar = Label(ventana, text='Los archivos existentes han sido eliminados            ', background="red",
                    font=("agency fb", 14)).place(x=100, y=200)
    archivo.close()


def Limpiaretiquetas():
    anadir.config(text='')
    add.config(text='')
    eliminar.config(text='')


# ventana
ventana = Tk()  # Creando la ventana de la aplicacion con un objeto TK()
ventana.geometry("500x500")  # Ancho y alto en pixeles
ventana.title('Ventana TK')  # Titulo del objeto ventana

# labels y texttfield para introducir nombre
label1 = Label(text="Nombre").place(x=10, y=10)
entrada1 = StringVar()  # Declarando una variable para el textfield
txtuser1 = Entry(ventana, textvariable=entrada1).place(x=70, y=20)  # Objeto de entry

# para el apellido label y textfielda
label1 = Label(text="Apellido", font=("agency fb", 14)).place(x=10, y=40)
entrada2 = StringVar()
txtuser2 = Entry(ventana, textvariable=entrada2).place(x=70, y=50)

# boton para agregar nuevos
Agregar = Button(ventana, text='registrar datos', command=introducirdatos).place(x=50,
                                                                                 y=100)  # Objeto Butto, donde de despliega, coordenadas y a que procedimiento va si se hace clic en el
# boton para mostrar registros:
mostrar = Button(ventana, text='mostrar datos', command=mostrardatos).place(x=150, y=100)
# boton para eliminar registros:
Borrar = Button(ventana, text='Borrar registros', command=eliminardatos).place(x=250, y=100)
# boton para limpiar labels:
limpiar = Button(ventana, text='limpiar label', command=Limpiaretiquetas).place(x=350, y=100)

anadir = Label(ventana, text='')
add = Label(ventana, text='')
eliminar = Label(ventana, text='')

# la suma que hizo posible todo esto :)
# suma=Button(ventana,text='calcular suma',command=sumafuncion).place(x=40, y=100)

ventana.mainloop()

3- Programa de Lyvan (Archivos)


Código: 

import time
from colorama import Fore, Style

opc = 1
while opc != 4:
    print (
            Fore.CYAN + "\t\tMENU\n\n1.- Capturar nuevo registro\n2.- Mostrar registros\n3.- Eliminar registro\n4.- Salir" + Style.RESET_ALL)
    opcion = raw_input("Elige la opcion:\n")

    if opcion == "1":
        op = "si"
        x = 0
        while op != "no":
            rc = "no"
            while rc != "si":
                print (Fore.BLUE + "\t\tNUEVO REGISTRO\n" + Style.RESET_ALL)
                archivo = open("ejemplo1.csv", "a")
                nombre = raw_input("Ingresa un nombre:\n")
                apellido = raw_input("Ingresa un apellido\n")
                print (
                        Fore.BLUE + "\t\tEL REGISTRO INGRESADO ES : " + nombre + " " + apellido + "\n\t\tES CORRECTO? si/no\n" + Style.RESET_ALL)
                rc = raw_input()
                while x != 1:
                    if rc != "si" and rc != "no":
                        print (Fore.RED + "\t\tINGRESE UNA RESPUESTA CORRECTA si/no\n" + Style.RESET_ALL)
                        rc = raw_input()
                    else:
                        x = 1
                if rc == "si":
                    rc = "si"
                else:
                    rc = "no"

            print (Fore.RED + "\t\tSE A CAPTURADO EL REGISTRO : " + Style.RESET_ALL + nombre + " " + apellido)
            archivo.write(nombre + "," + apellido + "\n")
            print (Fore.BLUE + "\t\tREQUIERE INGRESAR OTRO REGISTRO? si/no" + Style.RESET_ALL)
            op = raw_input()

    elif opcion == "2":
        print (Fore.GREEN + "\t\tMOSTRAR REGISTROS\n" + Style.RESET_ALL)
        archivo = open("Ejemplo.csv")
        r = archivo.read()
        if r == "":
            print (Fore.RED + "\t\tEL ARCHIVO ESTA VACIO\n\n")
            archivo.close()
            time.sleep(3)
        else:
            print "Cargando.."
            time.sleep(2)
            print (Fore.GREEN + "Carga lista:" + Style.RESET_ALL)
            print r
            archivo.close()
            time.sleep(3)

    elif opcion == "3":
        print Fore.RED + "\t\tBORRAR\n"
        archivo = open("Ejemplo.csv", "a")
        a = open("Ejemplo.csv")
        r = a.read()
        if r == "":
            print ("\t\tEL ARCHIVO ESTA VACIO\n\n")
            archivo.close()
            time.sleep(3)
        else:
            archivo.truncate()
            print (Fore.RED + "\t\tLOS REGISTROS HAN SIDO BORRADOS\n" + Style.RESET_ALL)
            archivo.close()
            time.sleep(3)

    elif opcion == "4":
        print (Fore.RED + "\t\tSALIR DEL PROGRAMA")
        print ("\t\tADIOS" + Style.RESET_ALL)
        opc = 4



4- Programa de Antonio Huerta (Menu con arreglos)






Código:





#Variable Global
global array
array = []
 
#Metodos
 
def IngresarDatos():
    print "Ingresa 5 numeros para un arreglo: "
    i=0
    while i<5: ain="" array.__len__="" array.append="" array.reverse="" array="" arreglo="" contador-="1" contador="len(array)" def="" del="" dios="" elif="" else:="" enu--="" enumerate="" for="" i="" if="" in="" index="=array.__len__()-1):" ingresardatos="" invertedarray.append="" invertedarray="" invertir="" j="" metodo="" metodos="" n="" ningrese="" numero="" numeroactual="" opc="=3):" opcion1="" opcion2="" opcion3="" opcion:="" para="" pre="" print="" reverse="" reversed="" salir="" sin="" su="" un="" while="">


5-  Programa sobre clases y objetos (Primer video)


Código:


class operaciones:
    def __init__(self, num1, num2):
        self.num1 = num1
        self.num2 = num2

    def suma(self):
        return self.num1 + self.num2

    def resta(self):
        return self.num1 - self.num2


obj = operaciones(3, 7)

print obj.suma()
print obj.resta()

6- Programa sobre clases y objetos (Segundo video)


Código:



class Humano:
    def __init__(self, edad):
        self.edad = edad

    def hablar(self, mensaje):
        print mensaje


pedro = Humano(26)
raul = Humano(21)

print "Soy pedro y tengo", pedro.edad
print "Soy Raul y tengo", raul.edad

pedro.hablar("Hola")

raul.hablar("Hola, pedro")

7-  Programa punto de venta



Código:




from Tkinter import *
import tkMessageBox


def SumMul():
    try:
        _e0 = int(v0.get())
        _e0 = _e0 * .50
        _e1 = int(v1.get())
        _e1 = _e1 * 1
        _e2 = int(v2.get())
        _e2 = _e2 * 2
        _e3 = int(v3.get())
        _e3 = _e3 * 5
        _e4 = int(v4.get())
        _e4 = _e4 * 10
        _e5 = int(v5.get())
        _e5 = _e5 * 20
        _e6 = int(v6.get())
        _e6 = _e6 * 50
        _e7 = int(v7.get())
        _e7 = _e7 * 100
        _e8 = int(v8.get())
        _e8 = _e8 * 200
        _e9 = int(v9.get())
        _e9 = _e9 * 500
        _e10 = _e0 + _e1 + _e2 + _e3 + _e4 + _e5 + _e6 + _e7 + _e8 + _e9
        tkMessageBox.showinfo("El resultado es", _e10)
    except ValueError:
        etiqueta.config(text="Introduce un numero entero")


v = Tk()
v.title("")
v.geometry("200x350")

vp = Frame(v)
vp.grid(column=0, row=0, padx=(50, 50), pady=(10, 10))
vp.columnconfigure(0, weight=1)
vp.rowconfigure(0, weight=1)

ET0 = Label(vp, text="MONEDAS")
ET0.grid(column=2, row=1)

e0 = Label(vp, text="0.50")
e0.grid(column=1, row=3)

e1 = Label(vp, text="1.00")
e1.grid(column=1, row=4)

e2 = Label(vp, text="2.00")
e2.grid(column=1, row=5)

e3 = Label(vp, text="5.00")
e3.grid(column=1, row=6)

e3 = Label(vp, text="10.00")
e3.grid(column=1, row=7)

v0 = ""
v0 = Entry(vp, width=5, textvariable=v0)
v0.grid(row=3, column=2)

v1 = ""
v1 = Entry(vp, width=5, textvariable=v1)
v1.grid(row=4, column=2)

v2 = ""
v2 = Entry(vp, width=5, textvariable=v2)
v2.grid(row=5, column=2)

v3 = ""
v3 = Entry(vp, width=5, textvariable=v3)
v3.grid(row=6, column=2)

v4 = ""
v4 = Entry(vp, width=5, textvariable=v4)
v4.grid(row=7, column=2)

ET1 = Label(vp, text="BILLETES")
ET1.grid(column=2, row=9)

e4 = Label(vp, text="20.00")
e4.grid(column=1, row=11)

e5 = Label(vp, text="50.00")
e5.grid(column=1, row=12)

e6 = Label(vp, text="100.00")
e6.grid(column=1, row=13)

e7 = Label(vp, text="200.00")
e7.grid(column=1, row=14)

e8 = Label(vp, text="500.00")
e8.grid(column=1, row=15)

v5 = ""
v5 = Entry(vp, width=5, textvariable=v5)
v5.grid(row=11, column=2)

v6 = ""
v6 = Entry(vp, width=5, textvariable=v6)
v6.grid(row=12, column=2)

v7 = ""
v7 = Entry(vp, width=5, textvariable=v7)
v7.grid(row=13, column=2)

v8 = ""
v8 = Entry(vp, width=5, textvariable=v8)
v8.grid(row=14, column=2)

v9 = ""
v9 = Entry(vp, width=5, textvariable=v9)
v9.grid(row=15, column=2)

b = Button(vp, text="TOTAL", command=SumMul)
b.grid(row=17, column=2, padx=(20, 20), pady=(20, 20))

v.mainloop()

8- Programando un juego (Ataca a los orcos V 0.0.1)


Código:



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

import random
import textwrap

if __name__ == '__main__':
    seguir_jugando = 1
    ocupantes = ['enemigo', 'amigo', 'no ocupada']
    ancho_linea = 72  # variable de tamano 72
    linea_punteada = ancho_linea * '-'
    print(linea_punteada)
    print("\033[1m" + "Ataca a los Orcos V0.0.1" + "\033[0m")  # 033,1m,0m se utiliza para letras negritas

    # Aqui narra la historia del juego y en que consiste...
    msg = ("La guerra entre los humanos y sus arqueros enemigos, los Orcos, estaba en el aire."
           "Un enorme ejército de orcos se dirigía hacia los territos de los humanos. Destruían"
           "prácticamente todo en su camino. Los grandes reyes de la raza humana, se unieron para"
           " derrotar a su peor enemigo, era la gran batalla de su tiempo. Sir Gandorel, uno de los "
           "valientes caballeros que guardan las llanuras meridionales, inició un largo viaje hacia el este"
           ", a través de un desconocido bosque espeso. Durante dos días y dos noches, se movió con cautela "
           "a través del grueso bosque. En su camino, vio un pequeño asentamiento aislado. Cansado y con "
           "la esperanza de reponer su stock de alimentos, decidió tomar un desvío. Cuando se acercó al pueblo,"
           "vio cinco chozas. No había nadie alrededor. En ese instante, decidió entrar en un choza...")

    print(textwrap.fill(msg, width=ancho_linea))  # para respetar las lineas punteadas y que el texto se encuentre en el
    # con el mismo ancho de las lineas punteadas
    print("\033[1m" + "Misión:" + "\033[0m")
    print("Elige una choza donde poder descansar...")
    print("\033[1m" + "NOTA:" + "\033[0m")
    print("¡Cuidado! Hay enemigos rondando la zona")
    print(linea_punteada)

    while seguir_jugando == 1:
        chozas = []  # definimos un vector vacio en donde se estaran llenando las chozas
        while len(chozas) < 5:  # Definimos un número de asentamiento para establecerlo como amigo o enemigo
            eleccion_aleatoria = random.choice(ocupantes)  # random.choice toma uno de los elementos del vector
            chozas.append(eleccion_aleatoria)  # lo agrega al vector

        msg = "\033[1m" + "Elige una choza, introduce un número entre 1 y 5: " + "\033[0m"
        decision_usuario = input("\n" + msg)
        idx = int(decision_usuario)

        # Pasamos a descubrir cuales son los ocupantes del emplazamiento

        print("Descubriendo los ocupantes...")
        msg = ""
        for i in range(len(chozas)):
            ocupantes_info = "<%d:%s>" % (i + 1, chozas[i])
            if i + 1 == idx:
                ocupantes_info = "\033[1m" + ocupantes_info + "\033[0m"
            msg += ocupantes_info + " "
        print("\t" + msg)
        print(linea_punteada)
        print("\033[1m" + "Entrando en la choza %d..." % idx + "\033[0m")

        if chozas[idx - 1] == 'enemigo':
            print(
                        "\033[1m" + "Sir Gandorel ha muerto asesinado por una manada de orcos (Mucha suerte la próxima vez)" + "\033[0m")
        else:
            print("\033[1m" + "¡Felicidades! Sir Gandorel ha podido descansar con éxito" + "\033[0m")
        print(linea_punteada)
        seguir_jugando = input("¿Quieres jugar de nuevo? Si(1)/No(0):")

9-  Programando un juego propio (Adivina en que vaso esta la pelota)


Código:


import random

print "Bienvenido al juego de Adivina en que vaso esta la pelota"
opcion = 0;
juego = ["Pelota","Vacio","Vacio"]

while opcion!=2:
    print "Escoga un vaso:\n 1.- Izquierda\n 2.- Centro\n 3.- Derecha"
    jugador = int(input("Opcion: "))
    maquina = random.choice(juego)

    if maquina == juego[jugador-1]:
        print "Lo sentimos, has perdido, suerte para la proxima"
    else:
        print "Felicidades, encontraste la pelota!!\nHas ganado!!!"
    opcion = input("Deseas seguir jugando? 1-Si/2-No:")

Comentarios