forse mi sono spiegato male... ho provato a riscrivere il programma: ora mi aggiunge al csv la riga con data e temperatura; avrei solo bisogno di implementare una routine che elimini le righe più vecchie se vi sono più di 24 record (in modo da non aumentare troppo la dimensione del file). e questo non riesco a farlo
il codice attuale è:
codice:
import subprocess
import csv
import sys
import operator
from time import localtime, strftime
t = subprocess.check_output(["/opt/vc/bin/vcgencmd","measure_temp"])
a = str(t)
h = a[5:9]
s = strftime("%H:%M %D", localtime())
temperature = h.encode("utf-8")
time = s.encode("utf-8")
newtemp = [time,temperature]
fcsv = open("temperaturegraph.csv", "a")
wrobj = csv.writer(fcsv)
wrobj.writerow(newtemp)
fcsv.close()
fcsv = open("temperaturegraph.csv", "r")
totalrecord = csv.reader(fcsv, delimiter = ",")
row = 0
for record in totalrecord:
print(record)
row += 1
print(row)
for record in reversed(list(csv.reader(fcsv))):
print ','.join(record)
fcsv.close()
print("finish")
e funziona correttamente. nel listato ho anche aggiunto qualche print in più, per controllare cosa sta facendo...