2013/7/21 Juan <htpc.c...@gmail.com> > Hola, quiero leer solo la ultima linea de un fichero CSV (solo la linea que > se actualizo por ultima vez) y no tengo claro cual sería la mejor solución, > este es el código actual: > > #-------------------------------- > # leer fichero CSV > #-------------------------------- > def leer_datos(): > y =0 > lectura = csv.reader(open("data.csv", > for index,row in enumerate(lectura) > y +=1 > print 'Linea: ' + str(linea + 1) > print 'Temperatura' + row[0] + ', Humedad: ' + row[1] + ', > presion: ' + row[2] > > gracias >
Hola, puedes usar deque (en el módulo collections) para simular un uso parecido al tail de algunos sistemas operativos: http://docs.python.org/2/library/collections.html#deque-recipes Lo siguiente funciona pensando que tu fichero csv tiene 3 columnas y está separado por comas. La función te devuelve los valores de cada columna como float. from collections import deque def tail(file): kk = deque(open(file), maxlen = 1) temp,hum,pres = kk[0].split('\n')[0].split(',') return float(temp), float(hum), float(pres) t, h, p = tail('tufichero.csv') # t, h, p es para temperatura, humedad y presión
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/