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()
que hace la función "for lin in f"???
ResponderEliminar