Título: Solucionado [python] Salto de linea en lectura de fichero Publicado por: tonilogar en 26 Noviembre 2010, 00:28 am Quiero hacer una lista con los datos de un fichero *.txt
Los únicos datos que me interesan son los dígitos del 2 al 10 de cada linea (los que están en negrita). Pero la primera linea del fichero no me interesa. ¿Como se salta una linea?... Tengo entendido que es con "\n"....pero he intentado todas las combinaciones inimaginables y na de na. Este es el contenido del txt: (I10,X,A) 81680775 2009242021570722HR4.tif 81680773 2009242021570721HR4.tif 81680771 2009242021570720HR4.tif 81680769 2009242021570719HR4.tif 81680767 2009242021570718HR4.tif Código
Un saludo y gracias por vuestro tiempo. Título: Re: [python] Salto de linea en lectura de fichero Publicado por: tonilogar en 26 Noviembre 2010, 01:00 am Bueno lo arreglo con una chapuza:
Borro el primer valor de la lista. Pero no es muy ortodoxo que digamos ¿no? Código
Un saludo y gracias por vuestro tiempo. Título: Re: [python] Salto de linea en lectura de fichero Publicado por: Novlucker en 26 Noviembre 2010, 13:44 pm http://docs.python.org/library/fileinput.html#fileinput.isfirstline :P
Aunque no me parece tan chapuza quitar la primera línea, de hecho, me parece menos chapuza que utilizar el índice absoluto para obtener lo que hay que procesar (line[2:10]), si intentas con expresiones regulares? :P Saludos Título: Re: [python] Salto de linea en lectura de fichero Publicado por: tonilogar en 26 Noviembre 2010, 19:10 pm Gracias Novlucker este fin de semana me empollo la información.
Perdón por preguntas tan obvias pero mi ingles es very orribilososus Título: Re: [python] Salto de linea en lectura de fichero Publicado por: tonilogar en 17 Diciembre 2010, 01:49 am Pues estoy con las expresiones regulares. Y mas o menos las voy pillando .
Pero no se como colarlas para que me añada el texto con el filtro a la lista. En principio la expresión regular seria una de estas dos a gusto. r"\b8.......\b" # un string que empieza por 8+siete dígitos. r"\b8\d{7}\b" # un string que empieza por 8+siete dígitos numéricos. He probado con pattern y search pero no me aclaro. Un saludo y gracias por vuestro tiempo. Y sigo con la expresiones regulares que tienen miga. Título: Re: [python] Salto de linea en lectura de fichero Publicado por: Novlucker en 17 Diciembre 2010, 11:12 am findall :D
Saludos Título: Re: [python] Salto de linea en lectura de fichero Publicado por: tonilogar en 26 Diciembre 2010, 01:28 am Gracias Novlucker.
Gracias a tu ayuda y un amigo pythoniano he comprendido mejor el modulo re Aquí esta la solución: >>> patron = re.compile(r"\b8.......\b") >>> with open("bloc5C.iad",encoding="utf-8") as file_iad: lines = file_iad.read() coincidencias = patron.findall(lines) >>> coincidencias ['81460710', '81460709', '81460708', '81460707'] |