martes, 7 de mayo de 2013

Clases de Python!!!

Hola!!!

Cuando empezamos a usar lenguajes como Python empezamos a leer muchas veces, la palabra Objeto o Lenguajes Orientado a objetos o POO...

Entonces para entender este tipo de programación aunque sepas o no de programación, es costoso empezar.

Si bien Python es multiparadigma, quiere decir que puedo programar a la antigua o a la nueva (Cuack)..

Vamos a Hacer algo sencillo para que veas como trabajar!!!

Para crear un objeto, lo primero que necesitamos en un modelo!!

Un modelo se genera a partir de lo que llamaremos CLASE...

Vida real:

Clase Auto:
       "CARACTERISTICAS"
       Color
       Cilindrada
       Marca
       Tipo

       "ACCIONES"
       Arranca
       Semueve
       gastascombustible

Para que sirve??

Es solo para que cada ves que creemos un vehiculo en particular, no tengamos que hacerlo de cero y podamos unificar los criterios....

MiAuto=Auto()
        Rojo
        3.4
        fiat
        sedan
 OtroAuto=Auto()
        verde
        1.6
        chevrolet
        sedan

Entonces tenemos 2 objetos:
       1.MiAuto
       2.OtroAuto

Si... Objetos...

Ahora a la hora de trabajar con estos objetos, las realizamos de acuerdo a su nombre...

Ejemplo:
                MiAuto.arranca
                OtroAuto.gastacombustible


un ejemplito en python!!!
#---------------------------------------------------------------------------------

#Creo el Modelo (clase)
class Auto:
def __init__(self,color,marca,cilindrada,tipo): #Esta funcion construye de arranque el objeto.
self.color=color
self.marcar=marca
self.cilindrada=cilindrada
self.tipo=tipo

#Aca te toca a vos!!!
def andar():
pass

#Creo Objetos
miauto=Auto("rojo","Fiat","1,6","Sedan")
otroauto=Auto("verde","Chevrolet","2,00","Coupe")

#Ver caracteristicas del Obejeto
print miauto.color
print otroauto.color


#-----------------------------------------------------------------------------------------
     
Bueno es la forma mas sencilla de explicarlo, espero que les sirva!!!

Gracias.. Chauuuuu


Programación Python!!

Hola Gente!!!

Para los que están haciendo sus primera armas en Python, les regalo este código muy lindo para estudiar!!!
Todo lo que se pueda mejorar están invitados a hacerlos!!!!
El código es funcional, y esta desarrollado por mi!! así que las dudas las atiendo por ventanilla!!!

Es didáctico... Peguen y copien y a trabajar!!!

Falta la eliminación de datos terminar!!!
Saludos
______________________________________________________________________________

#Importa Modulos
import sys,os

#Variables de inicio
apellido=""
nombre=""
edad=""
email=""

#Clases

class Agenda():
#Constructor de clase
def __init__(self,apellido, nombre,edad):
self.apellido=apellido
self.nombre=nombre
self.edad=edad
self.email=email



#Funcion que toma las variables, abre el fichero y graba
def grabar(self):
#borra la pantalla
os.system("cls")
print "="*30
print "Ingresar Alumno"
print "="*30
#ingresa un dato y lo guarda en una varible
apellido=raw_input("Ingrese Apellido:")
nombre=raw_input("Ingrese Nombre:")
#Verifica que la edad sea un entero, ni no causa un error
try:
edad = raw_input("Edad: ")
dias = int(edad) * 365
print "Has vivido: " + str(dias) + " dias"
except ValueError:
print "Eso no es un numero"

email=raw_input("Ingrese su E-Mail:")

#Busca el @ dentro de los datos ingresados

if email.find("@") >= 0:
print "El mail es correcto";
else:
print "No es un mail Valido";
email=raw_input("Ingrese su E-Mail:")

print "="*30
f = open("fichero.txt","a")
f.write(apellido+","+nombre+","+edad+","+email+"\n")
f.close()
os.system("cls")
print "El registro fue cargado con Exito"

#Muestra la lista de datos en el archivo
def mostrar(self):

os.system("cls")
print "="*30
print "Los datos Ingresados son: "
print "="*30
for linea in open('fichero.txt'):
print linea
#Muestra el numero de registros
def mostrar_ultima(self):
os.system("cls")
f = open("fichero.txt","r")
lineas = f.readlines();
num_registro=len(lineas)
print "="*30
print "La cantidad de Registros es de: ",num_registro-1
print "="*30

f.close()

#Busca dentro del archivo una palabra
def buscar(self):
os.system("cls")
search=raw_input("Palabra a buscar:")
f = open("fichero.txt","r")
for i in f.readlines():
if i.find(search) >= 0:
print "Dato encontrado en: "+i;

f.close()

def eliminar(self):
os.system("cls")
print "="*30
f = open("fichero.txt")
ape=raw_input("Por apellido:")
for line in f:
linea = line.split(',')
apellido = linea[0]
nombre = linea[1]
direccion = linea[2]
email=linea[3]
if apellido==ape:
print "El Apellido se encuentra en la Base"
else:
print "Se desconoce el Apellido"

f.close()



#Genera el obejeto a partir de la clase
anio2013=Agenda(apellido, nombre, edad)


#Crea un menu para la aplicacion dentro de un bucle

while True:

print "="*30
print "      MENU"
print "="*30
print "1.INGRESAR ALUMNO"
print "2.MOSTRAR LISTA"
print "3.CANTIDAD DE REGISTROS"
print "4.BUSCAR"
print "5.ELIMINAR"
print "6.SALIR"
print "="*30
menu=input("Ingresar Opcion de menu:")

if menu==1:
anio2013.grabar()
if menu==2:
anio2013.mostrar()
if menu==3:
anio2013.mostrar_ultima()
if menu==4:
anio2013.buscar()
if menu==5:
anio2013.eliminar()
if menu==6:
sys.exit()