Foros del Web » Programando para Internet » Python »

Modificar archivos

Estas en el tema de Modificar archivos en el foro de Python en Foros del Web. Hola a todos! Soy nueva en python, tengo semanas aprendiendo el lenguaje y estoy trabajando en un proyecto espero que me puedan ayudar! Tengo que ...
  #1 (permalink)  
Antiguo 23/10/2011, 00:28
Avatar de PyLau  
Fecha de Ingreso: octubre-2011
Mensajes: 10
Antigüedad: 12 años, 6 meses
Puntos: 1
Modificar archivos

Hola a todos!

Soy nueva en python, tengo semanas aprendiendo el lenguaje y estoy trabajando en un proyecto espero que me puedan ayudar! Tengo que desarrollar una aplicación en python con interfaz gtk2 y a través de la interfaz el programa le pide unos datos al usuario para insertarlos directamente en ciertas partes de un archivo de configuración... He encontrado algunos ejemplos pero de verdad no los entiendo mucho, estaría muy agradecida por su ayuda les pongo un ejemplo de lo que busco:

Ingrese la dirección de la carpeta de sus proyectos: /home/laura/proyectoslau

En el archivo de configuración se va a insertar en:

carpeta de proyectos: “/home/laura/proyectoslau”



Gracias!
  #2 (permalink)  
Antiguo 23/10/2011, 10:54
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Modificar archivos

Mis preguntas en orden.

¿Tienes alguna duda puntual?

¿Que llevas hecho?

¿Que ejemplos has visto?

¿En que formato tiene el archivo de configuración?

¿Tu archivo de configuración es muy grande?
  #3 (permalink)  
Antiguo 23/10/2011, 21:00
Avatar de PyLau  
Fecha de Ingreso: octubre-2011
Mensajes: 10
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: Modificar archivos

Gracias por responder!

Las respuestas en orden:::

Mi duda puntual es como modificar los archivos directamente para insertar datos puestos por el usuario..

Lo que llevo hecho es la interfaz. Aquí esta el código.

Código:
import gtk

#Definimos las variables globales
entry1 = gtk.Entry()
entry2 = gtk.Entry()
entry3 = gtk.Entry()
entry4 = gtk.Entry()
       
# CaJaS   

def make_box1(homogeneous, spacing, expand, fill, padding):
   box = gtk.HBox(homogeneous, spacing)
   label = gtk.Label("Usuario:")
   label.set_alignment(0, 0)
   box.pack_start(label, gtk.FALSE, gtk.FALSE, 10)
   label.show()
   box.pack_start(entry1, gtk.FALSE, gtk.FALSE, 0)
   entry1.show()
   return box

def make_box2(homogeneous, spacing, expand, fill, padding):
   box = gtk.HBox(homogeneous, spacing)
   label = gtk.Label("Nombre del proyecto:")
   label.set_alignment(0, 0)
   box.pack_start(label, gtk.FALSE, gtk.FALSE, 10)
   label.show()
   box.pack_start(entry2, gtk.FALSE, gtk.FALSE, 0)
   entry2.show()
   return box

def make_box3(homogeneous, spacing, expand, fill, padding):
   box = gtk.HBox(homogeneous, spacing)
   label = gtk.Label("Correo:")
   label.set_alignment(0, 0)
   box.pack_start(label, gtk.FALSE, gtk.FALSE, 10)
   label.show()
   box.pack_start(entry3, gtk.FALSE, gtk.FALSE, 0)
   entry3.show()
   return box

def make_box4(homogeneous, spacing, expand, fill, padding):
   box = gtk.HBox(homogeneous, spacing)
   label = gtk.Label("Directorio:")
   label.set_alignment(0, 0)
   box.pack_start(label, gtk.FALSE, gtk.FALSE, 10)
   label.show()
   box.pack_start(entry4, gtk.FALSE, gtk.FALSE, 0)
   entry4.show()
   return box
	

   #Boton Enviar

def make_box7(homogeneous, spacing, expand, fill, padding):
        box = gtk.HBox(homogeneous, spacing)
        button = gtk.Button("  Enviar  ")
        button.connect("clicked", enviar)
        box.pack_start(button, gtk.FALSE, gtk.FALSE, 100)
        button.show()

        return box   

def enviar(widget):
           usuario   = entry1.get_text()
           nombre = entry2.get_text()
           correo   = entry3.get_text()
           directorio = entry4.get_text()
           mensaje = gtk.MessageDialog(buttons=gtk.BUTTONS_OK,message_format="Datos:    \n" + "Usuario: "+ entry1.get_text() + "\n Nombre del proyecto: " + entry2.get_text() + "\n Correo: " + entry3.get_text() + "\n Directorio: " + entry4.get_text())
           mensaje.run()
           mensaje.hide()


class PackBox1:
   def delete_event(self, widget, event, data=None):
           gtk.main_quit()
           return gtk.FALSE

   def __init__(self):
       self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
       self.window.connect("delete_event", self.delete_event)
       self.window.set_border_width(10)
       box1 = gtk.VBox(gtk.FALSE, 0)     

                

       box2 = make_box1(gtk.TRUE, 0, gtk.TRUE, gtk.TRUE, 10)
       box1.pack_start(box2, gtk.FALSE, gtk.FALSE, 10)
       box2.show()

      

       box2 = make_box2(gtk.TRUE, 0, gtk.TRUE, gtk.TRUE, 10)
       box1.pack_start(box2, gtk.FALSE, gtk.FALSE, 10)
       box2.show()

     

       box2 = make_box3(gtk.TRUE, 0, gtk.TRUE, gtk.TRUE, 10)
       box1.pack_start(box2, gtk.FALSE, gtk.FALSE, 10)
       box2.show()
       
       box2 = make_box4(gtk.TRUE, 0, gtk.TRUE, gtk.TRUE, 10)
       box1.pack_start(box2, gtk.FALSE, gtk.FALSE, 10)
       box2.show()      
             
	

       # Caja Boton Enviar Formulario

       box2 = make_box7(gtk.FALSE, 0, gtk.FALSE, gtk.FALSE, 0)
       box1.pack_start(box2, gtk.FALSE, gtk.FALSE, 0)
       box2.show()       

       #Separadooooooooooooooooooooooooooooooooooooooooooooooooooooooor

       separator = gtk.HSeparator()



       box1.pack_start(separator, gtk.FALSE, gtk.TRUE, 5)

	

       separator.show()



       #boton quit


       quitbox = gtk.HBox(gtk.FALSE, 0)

	

       button = gtk.Button("Quit")



       button.connect_object("clicked", gtk.mainquit, self.window)

	

       quitbox.pack_start(button, gtk.TRUE, gtk.FALSE, 0)


       box1.pack_start(quitbox, gtk.FALSE, gtk.FALSE, 0)




       self.window.add(box1)


       button.show()


       quitbox.show()


       box1.show()



       self.window.show()



def main():

	
    gtk.main()
	

    return 0


if __name__ =="__main__":

	

    packbox1 = PackBox1()
	

    main()
Estos fueron los ejemplos:
http://www.forosdelweb.com/f130/eliminar-reemplazar-parrafo-texto-con-python-682131/
Codigo ejemplo:
Código:
archivoviejo=open('datosviejos.txt', 'r')
datosviejos=archivoviejo.readlines()
archivoviejo.close()
datosnuevos=[line[:-1]+' 1000.0\n' 

if len(line.split(' '))==5

else
line for line in datosviejos]

archivonuevo=open('datosnuevos.txt', 'w')
archivonuevo.writelines(datosnuevos)
archivonuevo.close()

El archivo de configuracion es un .conf y no es grande, solo necesito modificar 10 lineas.

Etiquetas: modificar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:23.