String Formatting Operations for decimals.

Lacrima lacrima.maxim at gmail.com
Thu Apr 1 11:08:57 CEST 2010


Hello!

I need to format a decimal (floating point) number in the following
way:
10 results in '10'
10.5 results in '10.5'
10.50 results in '10.5'
10.5678 results in 10.57

How can I achieve this using standard Python string formatting
operations?
Something like '%.2f' works almost as expected:
>>> '%.2f' % 10.5
'10.50'
>>> '%.2f' % 10.5678
'10.57'
>>> '%.2f' % 10
'10.00'
But I always need trailing zeros to be excluded, i.e. 10.5 should
result in '10.5' (not '10.50'), and 10 should result in '10' (not
'10.00').
So how can I do this?
Sorry for my English.
Thanks in advance.

with regards,
Maxim



More information about the Python-list mailing list