Fixed #24181 -- Fixed multi-char THOUSAND_SEPARATOR insertion

Report and original patch by Kay Cha.
This commit is contained in:
Varun Sharma 2015-02-08 03:06:45 +05:30 committed by Claude Paroz
parent 2832a9b028
commit 540ca563de
2 changed files with 4 additions and 1 deletions

View File

@ -47,7 +47,7 @@ def format(number, decimal_sep, decimal_pos=None, grouping=0, thousand_sep='',
int_part_gd = ''
for cnt, digit in enumerate(int_part[::-1]):
if cnt and not cnt % grouping:
int_part_gd += thousand_sep
int_part_gd += thousand_sep[::-1]
int_part_gd += digit
int_part = int_part_gd[::-1]
return sign + int_part + dec_part

View File

@ -26,6 +26,9 @@ class TestNumberFormat(TestCase):
self.assertEqual(nformat('1234', '.', grouping=2, thousand_sep=',',
force_grouping=True), '12,34')
self.assertEqual(nformat('-1234.33', '.', decimal_pos=1), '-1234.3')
self.assertEqual(nformat('10000', '.', grouping=3,
thousand_sep='comma', force_grouping=True),
'10comma000')
def test_large_number(self):
most_max = ('{}179769313486231570814527423731704356798070567525844996'