文章内容
2021/7/26 17:15:40,作 者: 黄兵
Flask Jinja2显示float数据相关问题
最近使用Jinja显示百分比数据,但是显示的有问题,具体显示结果如下:
注意:这里黄色荧光笔是存在问题的显示结果,这里应该显示7.0%和14.0%,但是却显示成上面的样子,实际的数字是0.07和0.14,具体代码如下:
<td class="table-cell">{{ calc_item.packet_loss_rate * 100 }}%</td>
这里将结果乘以100,加上百分号,看起来没有问题,但是却显示有问题。
解决方案:
{% set loss_rate=calc_item.packet_loss_rate * 100 %}
<td class="table-cell">{{ '%0.1f' % loss_rate|float }}%</td>
更多问题可以看看这里:please add a "pyformat" filter
但是如果使用以下写法仍然无法解决问题:
<td class="table-cell">{{ calc_item.packet_loss_rate * 100|round(1, 'floor') }}</td>
还是显示有问题,具体文档看这里:jinja-filters.round
不知道存在什么问题。
参考资料:
1、How to use float filter to show just two digits after decimal point?
黄兵个人博客原创。
评论列表