min and max in the same function
This commit is contained in:
parent
c254bb8643
commit
1f633f3125
@ -27,6 +27,24 @@ def compare(a: Any, b: Any) -> int:
|
|||||||
return bool(a > b) - bool(a < b)
|
return bool(a > b) - bool(a < b)
|
||||||
|
|
||||||
|
|
||||||
|
def minmax(*arr: tuple) -> (Any, Any):
|
||||||
|
"""return the min and max value of an array (or arbitrary amount of arguments)"""
|
||||||
|
if len(arr) == 1:
|
||||||
|
if isinstance(arr[0], list):
|
||||||
|
arr = arr[0]
|
||||||
|
else:
|
||||||
|
return arr[0], arr[0]
|
||||||
|
|
||||||
|
arr = set(arr)
|
||||||
|
smallest = min(arr)
|
||||||
|
biggest = max(arr)
|
||||||
|
if smallest == biggest:
|
||||||
|
arr.remove(smallest)
|
||||||
|
biggest = max(arr)
|
||||||
|
|
||||||
|
return smallest, biggest
|
||||||
|
|
||||||
|
|
||||||
def human_readable_time_from_delta(delta: datetime.timedelta) -> str:
|
def human_readable_time_from_delta(delta: datetime.timedelta) -> str:
|
||||||
time_str = ""
|
time_str = ""
|
||||||
if delta.days > 0:
|
if delta.days > 0:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user