scanf en python

Chema Cortés ch3m4 en ch3m4.org
Mie Oct 1 12:18:25 CEST 2003


Alejandro Perez escribió:

 > Bueno Chema no se si te servirá, pero como flexible ...
 > Las clases Get Mid ... Puedes ir procesando el registro de entrada de la
 > forma más adecuada, los proceso de extracción de cada tipo de campo
 > quedan con finados en la clase que corresponda y cuando los datos están
 > en un diccionario pues como las convenga.

Muchas gracias. Tú código me ha servido para probar un par de ideas.

 > Lo de
> las expresiones regulares, no sé, quizá no sea lo que mas se ajusta a la
> organización de un fichero de texto. El uso de split creo que será más
> comun (un caracter de final de campo, otro de fin de registro ...)

He probado velocidades, y no existen grandes diferencias de velocidad 
entre usar las clases Get/Mid o usar las expresiones regulares. Las 
clases son más concisas en concepto, pero con las expresiones regulares 
se puede hacer búsquedas sofisticadas de patrones. Si una línea no se 
ajusta al patrón de búsquedas, ésta se excluye del proceso, lo que sí 
que supone aumento de velocidad de proceso:

#Patrón para procesar líneas con el código postal de Zaragoza (50000)
cad_patron=....
cad_patron+= "(?P<codpostal>50\d{3})"
cad_patron+=...

patron=re.compile(cad_patron)

for line in file("prueba.txt"):
    m=patron.match(line)
    if m:
       d=m.group_dict()
       ...


-- 
Res publica non dominetur


------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


Más información sobre la lista de distribución Python-es