New submission from py.user <port...@yandex.ru>: http://docs.python.org/py3k/library/string.html#format-specification-mini-language
The '#' option: "For floats, complex and Decimal the alternate form causes the result of the conversion to always contain a decimal-point character, even if no digits follow it. Normally, a decimal-point character appears in the result of these conversions only if a digit follows it. In addition, for 'g' and 'G' conversions, trailing zeros are not removed from the result." 1) >>> import decimal >>> '{0:#.5g}'.format(1.5) '1.5000' >>> '{0:.5f}'.format(decimal.Decimal(1.5)) '1.50000' >>> '{0:.5g}'.format(decimal.Decimal(1.5)) '1.5' >>> '{0:#.5g}'.format(decimal.Decimal(1.5)) '1.5' >>> no zeros with "#" 2) >>> import decimal >>> '{0:#.5g}'.format(decimal.Decimal('1.500000000000')) '1.5000' >>> '{0:.5g}'.format(decimal.Decimal('1.500000000000')) '1.5000' >>> zeros without "#" ---------- components: Interpreter Core, Library (Lib) messages: 151790 nosy: py.user priority: normal severity: normal status: open title: In str.format "{0:#.5g}" for decimal.Decimal doesn't print trailing zeros type: behavior versions: Python 3.2 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue13838> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com