mirror of
https://github.com/Redume/Shirino.git
synced 2025-02-04 09:58:57 +03:00
fix: handle exponential notation and large numbers in format_number function
This commit is contained in:
parent
d8d6635987
commit
234e8bf244
1 changed files with 9 additions and 11 deletions
|
@ -1,14 +1,12 @@
|
||||||
|
from decimal import Decimal
|
||||||
|
|
||||||
def format_number(number):
|
def format_number(number):
|
||||||
number_str = str(number)
|
number = Decimal(str(number))
|
||||||
|
|
||||||
if '.' in number_str:
|
formatted_integer_part = '{:,.0f}'.format(number).replace(',', ' ')
|
||||||
integer_part, fractional_part = number_str.split('.')
|
|
||||||
else:
|
if '.' in str(number):
|
||||||
integer_part, fractional_part = number_str, ''
|
fractional_part = str(number).split('.')[1]
|
||||||
|
|
||||||
formatted_integer_part = '{:,}'.format(int(integer_part)).replace(',', ' ')
|
|
||||||
|
|
||||||
if fractional_part:
|
|
||||||
return formatted_integer_part + '.' + fractional_part
|
return formatted_integer_part + '.' + fractional_part
|
||||||
else:
|
else:
|
||||||
return formatted_integer_part
|
return formatted_integer_part
|
||||||
|
|
Loading…
Add table
Reference in a new issue