def human_readable_size()

in utility.py [0:0]


def human_readable_size(size_in_bytes, decimal_places=2):
    if size_in_bytes < 0:
        return "-" + human_readable_size(-size_in_bytes)
    if size_in_bytes < 1024:
        return f"{size_in_bytes}B"
    elif size_in_bytes < 1024 ** 2:
        return f"{size_in_bytes / 1024:.{decimal_places}f}KB"
    elif size_in_bytes < 1024 ** 3:
        return f"{size_in_bytes / (1024 ** 2):.{decimal_places}f}MB"
    elif size_in_bytes < 1024 ** 4:
        return f"{size_in_bytes / (1024 ** 3):.{decimal_places}f}GB"
    elif size_in_bytes < 1024 ** 5:
        return f"{size_in_bytes / (1024 ** 4):.{decimal_places}f}TB"
    else:
        return f"{size_in_bytes / (1024 ** 5):.{decimal_places}f}PB"