Problemas leyendo un fichero al encontrar EOF.

Francesc Alted falted en pytables.org
Mie Sep 29 09:57:53 CEST 2004


Mmm... no sé muy bien cual es tu problema. Esto te lo solucionaria?:

umbral = 1.0
for line in open('data'):
    sp=line.split()
    f,s=(float(sp[0]), sp[1])
    if f >= umbral:
        print "f, s -->", f, s

a mi me funciona para cualquier número de lineas

A Dimecres 29 Setembre 2004 03:04, Victor Peinado va escriure:
> ¡Hola lista!
> 
> Estoy teniendo algunos problemas para evitar que un programita me
> casque al encontrar el final de un fichero y no sé cómo hacer frente a
> esto. Os cuento:
> 
> Estoy leyendo línea a línea distintos ficheros (una especie de listas
> de palabras) de longitud variable. Cada línea de estos ficheros tiene
> el siguiente formato:
> 
> valor1  término1
> valor2  término2
> valor3  término3
> ...
> valorN  términoN
> 
> 
> donde valor es un número con coma flotate y término es una cadena.
> Además, los valores están colocados en orden decreciente.
> 
> El caso es que voy leyendo línea a línea (usando f.readline()) siempre
> que el valor de la línea actual no sea inferior a determinado umbral,
> hago un split para separar los valores y los proceso. Bueno, hasta
> aquí es sencillo. El problema lo encuentro cuando uno de los fichero
> tiene una sola línea, encuentra el EOF y casca el split. ¿Cómo puedo
> anticiparme y comprobar que no he llegado al final del fichero?
> 
> Gracias de antemano y saludos.
>  
> 

-- 
Francesc Alted




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