Add minute of day / minute number.
authorScott Gasch <[email protected]>
Wed, 5 May 2021 15:05:07 +0000 (08:05 -0700)
committerScott Gasch <[email protected]>
Wed, 5 May 2021 15:05:07 +0000 (08:05 -0700)
utils.py

index 8f8551399cdc6a1e0c01f924af90fdf2e1150ec6..e9c6edd1853640816e0a3ad46c9dec8441a27758 100644 (file)
--- a/utils.py
+++ b/utils.py
@@ -71,5 +71,30 @@ def describe_duration_briefly(age: int) -> str:
     return descr
 
 
+def minute_number(hour: int, minute: int) -> int:
+    """Convert hour:minute into minute number from start of day."""
+    return hour * 60 + minute
+
+
+def datetime_to_minute_number(dt: datetime) -> int:
+    """Convert a datetime into a minute number (of the day)"""
+    return minute_number(dt.hour, dt.minute)
+
+
+def minute_number_to_time_string(minute_num: int) -> str:
+    """Convert minute number from start of day into hour:minute am/pm string."""
+    hour = minute_num // 60
+    minute = minute_num % 60
+    ampm = "a"
+    if hour > 12:
+        hour -= 12
+        ampm = "p"
+    if hour == 12:
+        ampm = "p"
+    if hour == 0:
+        hour = 12
+    return f"{hour:2}:{minute:02}{ampm}"
+
+
 # x = describe_age_of_file_briefly("pages/clock_10_none.html")
 # print x