2010-09-29 7 views

Répondre

7

Utilisez locale.format. Vous devrez d'abord setlocale, car le style de formatage dépend de l'emplacement (les pays européens utilisent généralement . au lieu de , pour séparer les chiffres, par exemple).

>>> import locale 
>>> locale.setlocale(locale.LC_ALL, '') 
'English_United Kingdom.1252' 
>>> locale.format("%d", 1000000000, grouping=True) 
'1,000,000,000' 

LC_ALL définit les paramètres régionaux à la valeur par défaut, habituellement dans la variable d'environnement LANG.

+0

Notez que ceci est l'utilisation norme britannique - « européen » ne comprend pas au Royaume-Uni. Cette bande d'eau fait une grande différence! – neil

2

En Python 3.1, vous pouvez utiliser le thousands format specifier:

>>> ',.2f'.format(1234567.89) 
'1,234,567.89' 
+0

Cette fonctionnalité est un peu incomplète, car elle ne prend pas en compte les formats alternatifs tels que le commun '.' au lieu de', '. –

+0

True. Les docs en parlent un peu, et il est prévu de le rendre plus complet dans les futures versions. –

Questions connexes