форматирование чисел - PullRequest
       10

форматирование чисел

0 голосов
/ 17 декабря 2009

У меня простой вопрос, как я могу показать число 12045678 как 12 045 678, то есть автоматически показать в американском формате в jython

, поэтому 12345 должно быть 12 345, а 1234567890 должно быть 1 234 567 890 и т. Д.

Спасибо всем за помощь.

Ответы [ 4 ]

1 голос
/ 17 декабря 2009

См. официальную документацию , в частности 7.1.3.1. Спецификация формата Mini-Language и, в частности:

'n' Number. Это то же самое, что и "g", за исключением того, что он использует текущую локаль настройка для вставки соответствующего символы разделителя чисел.

0 голосов
/ 19 декабря 2009

до версии 2.6 нет встроенной функции

это самый простой, который я нашел

def splitthousands(s, sep=','):  
    if len(s) <= 3: return s  
    return splitthousands(s[:-3], sep) + sep + s[-3:]

splitthousands ( '123456')

123456

0 голосов
/ 17 декабря 2009

Вы можете использовать функцию, подобную этой:

def numberToPrettyString(n):
   """Converts a number to a nicely formatted string.
      Example: 6874 => '6,874'."""
   l = []
   for i, c in enumerate(str(n)[::-1]):
       if i%3==0 and i!=0:
           l += ','
       l += c
   return "".join(l[::-1])
0 голосов
...