【问题标题】:How can I display a floating number with no trailing zeros with printf [duplicate]如何使用 printf 显示没有尾随零的浮点数 [重复]
【发布时间】:2019-01-14 07:19:25
【问题描述】:

我想格式化浮点数,在点后最多添加 2 个小数。

1.24 应该显示为 1.24

1.246 应该显示为 1.25

1.2 应该显示为 1.2

1.0 应该显示为 1

"%.2f" 与 printf 一起使用有一个缺点。对于点后少于 2 位小数的数字,它会添加尾随 0 位。因此,1.2 显示为 1.20,1.0 显示为 1.00。

【问题讨论】:

    标签: printf


    【解决方案1】:

    您可以进行自定义打印,剪掉拖尾0s,然后拖尾.

    例如在python中

    def custom_print(num):
        str = ('%.2f' % num).rstrip('0').rstrip('.')
        print(str)
    

    【讨论】:

    • 我正在寻找一个更简单的解决方案,例如 printf 支持的另一个模板
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-27
    • 2022-01-18
    • 1970-01-01
    • 2018-11-15
    • 2013-02-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多