From 1dc68f9c6aa2a84fa1eccb9255310eeeca53c812 Mon Sep 17 00:00:00 2001 From: uvok Date: Tue, 15 Apr 2025 18:02:20 +0200 Subject: use map() for shorter code --- bla.py | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'bla.py') diff --git a/bla.py b/bla.py index 979271f..e6eecb6 100644 --- a/bla.py +++ b/bla.py @@ -51,25 +51,22 @@ def generate_report(sale_entries, proceeds: float | Decimal, crypto_asset, date_ return report -def read_kraken_ledger(csv_path: str) -> List[LedgerAction]: - actions: List[LedgerAction] = [] +def parse_kraken_row(row: dict) -> LedgerAction: + date = row["time"].split(" ")[0] + return LedgerAction( + type=row["type"], + asset=row["asset"], + amount=Decimal(row["amount"]), + fee=Decimal(row.get("fee", "0")), + refid=row.get("refid", ""), + date=date, + ) + +def read_kraken_ledger(csv_path: str) -> List[LedgerAction]: with open(csv_path, "r") as file: reader = csv.DictReader(file) - for row in reader: - date = row["time"].split(" ")[0] - actions.append( - LedgerAction( - type=row["type"], - asset=row["asset"], - amount=Decimal(row["amount"]), - fee=Decimal(row.get("fee", "0")), - refid=row.get("refid", ""), - date=date, - ) - ) - - return actions + return list(map(parse_kraken_row, reader)) fifo_queues: Dict[str, FIFOQueue] = {} # Separate FIFO queue per cryptocurrency -- cgit v1.2.3