[pyar] Readlines Python

Hernan Grecco hernan.grecco en gmail.com
Lun Feb 27 14:14:30 ART 2012


Si estas usando python > 2.6, te combiene usar "with" ya que se va a
ocupar de cerrar correctamente el archivo aunque exista un error.
Ademas, no te combiene usar readlines ya que va a crear una lista que
no necesitas.

Quedaria algo asi:

with open('archivo.txt') as fp:
   for line in fp:
       bef, aft = line.strip().split(':')
       print(aft)

Y para el problema que vos planteaste (suponiendo que la variable
search guarda lo que buscas):

with open('archivo.txt') as fp:
   for line in fp:
       bef, aft = line.strip().split(':')
       if aft == search:
           print(a)
           break
   else:
       print('Not found')

Si es una operacion que tenes que har muchas veces y el archivo no es
muy grande, lee el archivo una sola vez y crea un diccionario:

with open('x.txt') as fp:
    table = dict(line.strip().split(':', 1) for line in fp)

print(table[search1])
print(table[search2])

Hernan

2012/2/27  <gasgen11 en gmail.com>:
> Listo corregi el error, lo que me paso fernando estaba perfecto, fue un error mio de tipeo. Tenia un problema con que solo me leia la primera linea del .txt pero lo solucione con un return :)!. Saludos y gracias!
> Gastón Gentile
>
> -----Original Message-----
> From: gasgen11 en gmail.com
> Date: Mon, 27 Feb 2012 02:26:40
> To: Python Argentina<pyar en python.org.ar>
> Reply-To: gasgen11 en gmail.com
> Subject: Re: [pyar] Readlines Python
>
> Hola Facundo,
> Te explico perdón por no explicarme desde el principio.
> Lo que quiero hacer es que el codigo busque una palabra que yo introduzca con un raw_input.
> por ejemplo: numero
> Cuando yo pongo numero, quiero que se busque una linea que empiece con la palabra numero,
> numero: 1
> Entonces yo lo que quiero es que me devuelva: 1, me explico?
>
> Gastón Gentile
>
> -----Original Message-----
> From: Facundo Batista <facundobatista en gmail.com>
> Sender: pyar-bounces en python.org.ar
> Date: Sun, 26 Feb 2012 23:21:58
> To: Python Argentina<pyar en python.org.ar>
> Reply-To: Python Argentina <pyar en python.org.ar>
> Subject: Re: [pyar] Readlines Python
>
> 2012/2/26  <gasgen11 en gmail.com>:
>
>> Bueno, patricio probe el codigo, pero, el problema que tengo es que no lee todas lineas del fichero, solamente lee la primera...como puedo hacer que lea todas las lineas?
>
> Hola Gastón.
>
> Tu primer mail y luego este son un ejemplo de preguntas que realmente
> no pueden contestarse. O sea, parece que tenés un problema, pero
> realmente hay que ponerse a adivinar cual podría ser, y la gama de
> respuestas es imposible de cubrir en menos de un par de docenas de
> casos.
>
> Lo mejor que podés hacer es explicar mejor qué querés hacer, cual es
> el problema con el que te enfrentás al quererlo hacer, etc.
>
> De otra manera, difícilmente te podamos ayudar.
>
> Slds.
>
> --
> .    Facundo
>
> Blog: http://www.taniquetil.com.ar/plog/
> PyAr: http://www.python.org/ar/
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de Argentina - http://www.usla.org.ar



More information about the pyar mailing list