Análisis de ejercicios

Iniciado por blozzter, Agosto 11, 2011, 12:35:47 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Noviembre 03, 2011, 09:28:12 PM #20 Ultima modificación: Noviembre 03, 2011, 09:29:45 PM por blozzter
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

gracias por participar, me gustó mucho tu code.
Saludos.

(te edité tu mensaje, para la proxima utiliza las etiquetas para poner código, y evita el doble post)

Bueno muchas gracias lo tomare muy en cuenta  :P
Espero nos pongas mas ejercicios para ir practicando

Noviembre 07, 2011, 03:23:07 PM #21 Ultima modificación: Mayo 03, 2014, 03:55:26 AM por Flemon
Hola bueno les dejo el codigo de la agenda:
Código: python

#-------------------------------------------------------------------------------------------------------------------------------------------#
#Fecha de creacion: martes 1 de novoembre del 2011              Fecha de modificacion: Lunes 7 de noviembre del 2011                        #
#Archivo: Agenda                                                # de modificaciones: 1                                                      #
#Version:1.0.0                                                                                                                              #
#Autor: Marco Yuquilima                                         Observaciones: Terminado                                                    #
#-------------------------------------------------------------------------------------------------------------------------------------------#

class Elemento:
    def __init__(self,nombre,apellido,*otros):# inicializamos con 2 o mas parametros xq guardar necesita 5 parametros y buscar 2
        self.nombre=nombre
        self.apellido=apellido
        self.otros=otros
        self.f=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','a+')       

    def guardar(self): 
        nuevo=True               #variable que nos indica si existe el contacto para que los datos el txt no se repitan
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        for linea in hoja:
            if linea.find(self.nombre+"\t"+self.apellido)>=0:
                nuevo=False
                break
        hoja.close()
        if nuevo:
            valor=(self.nombre+"\t"+self.apellido+"\t"+self.otros[0]+"\t"+self.otros[1]+"\t"+self.otros[2])
            self.f.write("\n%s" %valor)          #escribimos los datos en el archivo
            self.f.close()
        else:
            print "#####################\nYa existe el contacto \n"           

    def listar(self):#metodo que nos lista todos los contactos
        self.f=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        print self.f.read()
        self.f.close()

    def buscar (self):#metodo que nos muestra un contacto en caso de existir
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        for linea in hoja:
            if linea.find(self.nombre+"\t"+self.apellido)>=0:
                print linea
        hoja.close()

    def modificar(self):#metodo con el cual podemos modificar un contacto
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        cadena="cadena vacia"
        for linea in hoja:
            if linea.find(self.nombre+"\t"+self.apellido)>=0:
                print linea
                cadena=linea#buscamos nombre y apellido del contacto y almacenamos todos los datos para reemplazarlos
                break
        hoja.close()
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        original=hoja.read()#creamos una "copia" del archivo
        hoja.close
        if original.find(self.nombre+"\t"+self.apellido)>=0:#buscamos al contacto para ingresar nuevos datos
            print"INGRESAR NUEVOS DATOS:"
            n=raw_input(u'Ingresar nombre: ')
            a1=raw_input(u'Ingresar apellido paterno : ')
            a2=raw_input(u'Ingresar apellido materno : ')
            d=raw_input(u'Ingresar direccion : ')
            t=raw_input(u'Ingresar telefono : ')
            txt=original.replace(cadena,n+"\t"+a1+"\t"+a2+"\t"+d+"\t"+t+"\n")#modificamos los datos en una "copia" del archivo
            hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','w')#abrimos el archivo para escribir
            hoja.writelines(txt)#reemplazamos linea a linea la "copia" del archivo al archivo original
            hoja.close()

    def eliminar(self):
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        cadena="cadena vacia"
        for linea in hoja:
            if linea.find(self.nombre+"\t"+self.apellido)>=0:
                print linea
                cadena=linea#buscamos nombre y apellido del contacto y almacenamos todos los datos para reemplazarlos
                break
        hoja.close()
        hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','r')
        original=hoja.read()#creamos una "copia" del archivo
        hoja.close
        if original.find(self.nombre+"\t"+self.apellido)>=0:#buscamos al contacto para ingresar nuevos datos
            txt=original.replace(cadena,"")#modificamos los datos en una "copia" del archivo
            hoja=open('/home/cencalada/Escritorio/python/Ejercicios marco/nombres.txt','w')#abrimos el archivo para escribir
            hoja.writelines(txt)#reemplazamos linea a linea la "copia" del archivo al archivo original
            hoja.close()
    def __del__(self):
        print "Destruyendo...."#eliminamos de memoria lo que ya no necesitamos

while True:#menu de opciones para interactuar correctamente la clase que manipula el archivo
    print "***************************************************************************************"
    print "MENU DE OPCIONES:"
    print "(1)- Ingresar contacto..."
    print "(2)- Lista de contactos..."
    print "(3)- Buscar contacto..."
    print "(4)- Modificar contacto..."
    print "(5)- Eliminar contacto..."
    print "(6)- Salir..."
    opcion=raw_input(u'Digitar opcion: ')
    print "***************************************************************************************"
    try:
        opcion=int(opcion)
    except:
        print "#################\nPor favor ingresar numero"
        continue
    if opcion==1:   
        n=raw_input(u'Ingresar nombre: ')
        a1=raw_input(u'Ingresar apellido paterno : ')
        a2=raw_input(u'Ingresar apellido materno : ')
        d=raw_input(u'Ingresar direccion : ')
        t=raw_input(u'Ingresar telefono : ')
        f=Elemento(n,a1,a2,d,t)
        f.guardar()
    elif opcion==2:
        f.listar()
    elif opcion==3:
        nombre=raw_input("Nombre de contacto: ")
        apellido=raw_input("Apellido de contacto: ")
        f=Elemento(nombre,apellido)
        f.buscar()
    elif opcion==4:
        nombre=raw_input("Nombre de contacto: ")
        apellido=raw_input("Apellido de contacto: ")
        f=Elemento(nombre,apellido)
        f.modificar()
    elif opcion==5:
        nombre=raw_input("Nombre de contacto: ")
        apellido=raw_input("Apellido de contacto: ")
        f=Elemento(nombre,apellido)
        f.eliminar()
    elif opcion==6:
        break
    else:
        print "#############################\nIngresar numeros entre el 1 y 6"

me parece que esta completo pero cualquier cosa avisenme

Noviembre 15, 2011, 12:02:03 AM #22 Ultima modificación: Noviembre 15, 2011, 01:49:33 PM por Spectrus
valla amigos comprten muchos codes aqui cuando ya empiese a practicar python y lo tenga bien estudiado y aprendedi posteo aqui mi programa salu2 chicos !!! ;)

Spectrus: Amigo no uses colores ya que dificulta la lectura.
[♠] [♦] [♣] [♥] カřθBમčאּ[♠] [♦] [♣] [♥]

You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
valla amigos comprten muchos codes aqui cuando ya empiese a practicar python y lo tenga bien estudiado y aprendedi posteo aqui mi programa salu2 chicos !!!  ;)

porfavor  es molesto para los ojos leer de color rojo.. son varios post tuyos.. editalos :D gracias..
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login


Llaman traidor a la persona que evito que caiga el foro, gente bruta!