首页 > 解决方案 > 在不使用 fstrings 修改精度的情况下从 float 中删除尾随 `.0`

问题描述

如何使用 fstrings 格式化浮点数,以使输出不会改变,除非有尾随.0,然后简单地删除它?

我问是因为大多数答案只是告诉我们使用g 字符串格式,但这不是正确的答案。当使用g如果数字变得太大时,表示可能会遗漏一些信息和/或更改为科学记数法,如您在此处看到的:

>>> f"{202105.35}"
'202105.35'
>>> f"{202105.35:g}"
'202105'
>>> f"{202105.0}"
'202105.0'
>>> f"{202105.0:g}"
'202105'

我想要两全其美的使用格式参数,但又不失精度。

在我的研究中,我发现您可以指定一个精度,digit+但我不想设置一个特定的精度,但如果这是唯一的方法,那么我将不得不设置一个。

标签: python

解决方案


推荐阅读