Foros del Web » Programando para Internet » Python »

Como leer o editar una linea concreta

Estas en el tema de Como leer o editar una linea concreta en el foro de Python en Foros del Web. Bueno mi pregunta es como leer una linea concreta o poder editarla, ya que el readline() me lee todas, yo quiero leer solo una (para ...
  #1 (permalink)  
Antiguo 08/06/2011, 08:28
 
Fecha de Ingreso: noviembre-2008
Mensajes: 20
Antigüedad: 16 años
Puntos: 0
Como leer o editar una linea concreta

Bueno mi pregunta es como leer una linea concreta o poder editarla, ya que el readline() me lee todas, yo quiero leer solo una (para poder coger el texto de esa línea)
Gracias por su ayuda, Un saludo.
  #2 (permalink)  
Antiguo 08/06/2011, 08:41
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Como leer o editar una linea concreta

readline no te lee todas las lineas solo te lee una linea.
Puedes hacer algo mas o menos así.
Código Python:
Ver original
  1. with open("archivo.txt", "r") as f:
  2.     lines = f.readlines()
  3.     print lines[1] #Linea 2
  4.     print lines[3] #Linea 4
  #3 (permalink)  
Antiguo 08/06/2011, 12:20
 
Fecha de Ingreso: noviembre-2008
Mensajes: 20
Antigüedad: 16 años
Puntos: 0
Respuesta: Como leer o editar una linea concreta

Vale, gracias ¿Y para escribir o eliminar algo en esa linea?
  #4 (permalink)  
Antiguo 08/06/2011, 12:43
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Como leer o editar una linea concreta

Simple,
lines[1] = "Hola, soy el nuevo contenido de la línea 2"

Ahora, para guardar los cambios en el archivo, tendrás que guardarlo completo, no se puede simplemente editar la línea que te interesa.
En realidad sí se puede, pero a menos que comprendas lo que son los punteros a archivos y que si escribís algo en el archivo el resto del mismo NO se ajusta al nuevo contenido, mejor escribirlo de nuevo completo.


Saludos.
  #5 (permalink)  
Antiguo 08/06/2011, 12:46
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Como leer o editar una linea concreta

Como se que esto probablemente es parte alguna tarea, te lo diré de una vez.

No puedes hacer operaciones *IN-PLACE* en un archivo (Ok, si puedes pero probablemente sea muy costoso).

Lo mejor que puedes hacer es cargarlo todo en memoria, hacer las operaciones que quieras en memoria y al final escribir todo en el mismo archivo.

Etiquetas: linea
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:57.