From 0432bd00c2f7f454dbcbe741e117d00e702816f5 Mon Sep 17 00:00:00 2001 From: JustAnotherArchivist Date: Sat, 18 Nov 2023 08:00:11 +0000 Subject: [PATCH] Avoid float roundtrip for integer values --- sum-sizes | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/sum-sizes b/sum-sizes index 5f4e0aa..548c574 100755 --- a/sum-sizes +++ b/sum-sizes @@ -56,12 +56,13 @@ for line in sys.stdin: print(f'Skipping line with unknown unit: {origLine}', file = sys.stderr) continue try: - number = float(number) + if number.strip('0123456789') == '': + number = int(number) + else: + number = float(number) except ValueError as e: print(f'Skipping line with unparseable number: {origLine}', file = sys.stderr) continue - if number.is_integer(): - number = int(number) sum += int(number * units[unit]) # Special case because log(0) is kinda bad...