如何在Mako模板中使用Py3k样式的字符串格式?

Bri*_*ell 2 python mako python-3.x pyramid

我正在使用Mako模板进行Pyramid项目,我正在尝试显示一些浮点数.这些数字在我的代码中表示为浮点数,但是我想将它们截断为2位小数以便显示给用户.它是公认的,round()不是截断浮点数的好方法.因为我只想截断它们以进行显示,所以我倾向于使用字符串格式而不是使用Decimal模块的长度.

我在这里发现了一个较旧的问题,它显示了如何在Mako模板中使用Python 2.x字符串格式化 - 但是如何使用Python 3.x字符串格式呢?

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

这可能在文档中和/或可以通过实验发现,但我也想用旧的答案替换为适用于Python 3.x的答案.

Dav*_*ver 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'
Run Code Online (Sandbox Code Playgroud)