From 53339e351c6c41bf9e7293166019a0cc396aa619 Mon Sep 17 00:00:00 2001 From: Hykilpikonna Date: Wed, 24 Nov 2021 17:14:53 -0500 Subject: [PATCH] [+] Implement faster parse_date --- src/utils.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/utils.py b/src/utils.py index 31934d3..260a80f 100644 --- a/src/utils.py +++ b/src/utils.py @@ -141,6 +141,21 @@ def get_statistics(points: list[float]) -> Stats: return Stats(statistics.mean(points), statistics.median(points), statistics.stdev(points)) +def parse_date(iso: str) -> datetime: + """ + Parse date faster + + Preconditions: + - iso is the output of datetime.isoformat() (In a format like "2021-10-20T23:50:14") + + :param iso: Input date + :return: Datetime object + """ + params = [iso[:4], iso[5:7], iso[8:10], iso[11:13], iso[14:16], iso[17:19]] + params = [int(i) for i in params] + return datetime(*params) + + class EnhancedJSONEncoder(json.JSONEncoder): def default(self, o):