EV5_Beeldherk_Bomen/src/helpers/logger.py

50 lines
1.1 KiB
Python

import pathlib
import datetime
now = datetime.datetime.now()
class Logger:
def __init__(self, path):
self.fileName = pathlib.Path(
path, f"result-{now.strftime('%Y-%m-%dT%H.%M.%S')}.csv"
)
self.file = open(self.fileName, "x")
self.first = True
self.index = []
self.data = []
def add(self, name: str, value):
self.index.append(name)
self.data.append(value)
def csv(self, input):
result = ""
for idx, item in enumerate(input):
result += str(item)
if idx != (len(input) - 1):
result += ", "
result += "\n"
print(result)
return result
def update(self):
if self.first:
self.first = False
self.file.write(self.csv(self.index))
self.file.write(self.csv(self.data))
self.clear()
def clear(self):
# Clear data
self.index = []
self.data = []
def __del__(self):
print("Log file closed!")
self.file.close()