Gibt es eine Option in format specification, um Nullwerte als leer anzuzeigen, andernfalls Format verwenden?Formatspezifikation zur Anzeige leer (leere Zeichenkette) für Null (0)
>>> from decimal import Decimal
>>> '{:+010,.2f}'.format(Decimal('1234.56'))
'+01,234.56'
>>> '{:???f}'.format(Decimal(0))
''
>>>
UPDATE:
Ich brauche das gleiche Verhalten wie hier:
http://msdn.microsoft.com/en-us/library/0c899ak8.aspx#SectionSeparator
Wenn Python es nicht in Standardbibliotheken haben, bitte bestätigen Sie diese, und ich werde akzeptieren es als die Antwort.
hier ist eine ähnliche Frage für .NET http://stackoverflow.com/questions/2282573/using-net-string-formatting-how-doi-format-a-string-to-display-blank-empty -st – warvariuc
Es tut mir leid, aber Sie können natürlich nicht ein Format haben, das sowohl mit einer führenden Null, zwei Dezimalstellen und mindestens 10 Breite drucken, und gleichzeitig leer ist. Wenn Sie eine Null mit dem obigen Format drucken, erhalten Sie "+00,000.00". Sie müssen also dafür sorgen, dass es null ist oder nicht, was auch immer Sie tun. Und dann kannst du es einfach überspringen. Also sind alle Antworten richtig. –
Vielleicht war ich nicht klar - ich brauche eine Formatierer Option. Im .NET-Frage-Link ist es möglich. – warvariuc