Existe-t-il une option dans format specification pour afficher des valeurs nulles comme espace, sinon utiliser le format?Format de spécification pour afficher vide (chaîne vide) pour zéro (0)
>>> from decimal import Decimal
>>> '{:+010,.2f}'.format(Decimal('1234.56'))
'+01,234.56'
>>> '{:???f}'.format(Decimal(0))
''
>>>
MISE À JOUR:
J'ai besoin le même comportement que ici:
http://msdn.microsoft.com/en-us/library/0c899ak8.aspx#SectionSeparator
Si Python ne l'a pas dans les bibliothèques standards, s'il vous plaît confirmer et je vais l'accepter comme la réponse.
Voici une question similaire pour .NET http://stackoverflow.com/questions/2282573/using-net-string-formatting-how-do--format-a-string-to-display-blank-empty -st – warvariuc
Je suis désolé, mais vous ne pouvez évidemment pas avoir un format qui imprime à la fois avec un zéro, deux décimales et un minimum de 10, et vide en même temps. L'impression d'un zéro avec le format ci-dessus donne correctement "+00,000.00". Vous devrez donc le rendre conditionnel à être zéro ou non, quoi que vous fassiez. Et dans ce cas, vous pouvez simplement l'ignorer. Donc, toutes les réponses ci-dessous sont correctes. –
Peut-être que je n'étais pas clair - j'ai besoin d'une option de formatage. Dans le lien de question .NET c'est possible. – warvariuc