文章内容

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?

2、jinja-filters.round


黄兵个人博客原创。

转载请注明出处:黄兵个人博客 - Flask Jinja2显示float数据相关问题

分享到:

发表评论

评论列表