2012-04-10 40 views
2

我正在使用Mako模板处理金字塔项目,并试图显示一些浮点数。数字在我的代码中表示为浮点数,但我想将它们截断为2个小数位以便显示给用户。已经确定round()不是截断浮点数的好方法。由于我只想截断它们以供显示,因此我倾向于只使用字符串格式,而不是使用Decimal模块的长度。如何在Mako模板中使用Py3k风格的字符串格式?

我发现an older question here,它显示了如何在Mako模板中使用Python 2.x字符串格式 - 但是我怎样才能使用Python 3.x字符串格式呢?

>>>> "We display two significant digits: {0:.2f}".format(34.567645765) 
'We display two significant digits: 34.57' 

这可能是在文档和/或通过实验发现,但我也想有一个为Python 3.x的工程,以取代旧的答案

回答

7

完全相同的方式:

>>> from mako.template import Template 
>>> Template("We display two significant digits: ${'{0:.2f}'.format(34.567645765)}").render() 
'We display two significant digits: 34.57' 
+1

正确的答案是对堆栈溢出:所有是正确与宇宙。 – 2012-04-10 14:09:46

相关问题