1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2025-10-04 19:44:33 -04:00

[utils] format_decimal_suffix: Fix for very large numbers (#3109)

Authored by: s0u1h
This commit is contained in:
s0u1h
2022-03-18 17:03:09 -04:00
committed by GitHub
parent 0c14d66ad9
commit eeb2a770f3
2 changed files with 4 additions and 2 deletions

View File

@@ -2279,8 +2279,9 @@ def format_decimal_suffix(num, fmt='%d%s', *, factor=1000):
num, factor = float_or_none(num), float(factor)
if num is None or num < 0:
return None
exponent = 0 if num == 0 else int(math.log(num, factor))
suffix = ['', *'kMGTPEZY'][exponent]
POSSIBLE_SUFFIXES = 'kMGTPEZY'
exponent = 0 if num == 0 else min(int(math.log(num, factor)), len(POSSIBLE_SUFFIXES))
suffix = ['', *POSSIBLE_SUFFIXES][exponent]
if factor == 1024:
suffix = {'k': 'Ki', '': ''}.get(suffix, f'{suffix}i')
converted = num / (factor ** exponent)