Python中的数千个分隔符

时间:2012-04-09 20:14:19

标签: python

  

可能重复:
  how to print number with commas as thousands separators in Python 2.x

有没有人知道一种更简单的方法,使数字有数千个分离:

def addComma(num):
    (num, post) = str(num).split('.')
    num = list(num)
    num.reverse()

    count = 0
    list1 = []

    for i in num:
        count += 1
        if count % 3 == 0:
            list1.append(i)
            list1.append(',')
        else:
            list1.append(i)

    list1.reverse()

    return ''.join(list1).strip(',') + '.' + post

它有效,但它似乎真的很脆弱......

1 个答案:

答案 0 :(得分:3)

locale.format()grouping=True

一起使用
>>> import locale
>>> locale.setlocale(locale.LC_NUMERIC, 'en_US')
'en_US'
>>> locale.format("%d", 1234567, grouping=True)
'1,234,456'

有关详细信息,请参阅http://docs.python.org/library/locale.html#locale.format