You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python温度转换程序输出保留两位小数的格式调整问题

Python温度转换程序输出保留两位小数的格式调整问题

嗨,我来帮你搞定这个小问题~你的代码里虽然用了round()把结果保留了两位小数,但在打印的时候,如果小数部分末尾是0,Python会自动省略多余的0,所以才会出现122.0而不是你想要的122.00。这里有几个简单的调整方法,都能达到你要的效果:

  • 直接在格式化字符串中指定小数位数
    这是最直接的方式,修改print语句的f-string格式,强制显示两位小数:

    print(f"Temperature in fahrenheit : {fahrenheit:.2f}")
    

    这里的:.2f表示以浮点数格式输出,固定保留两位小数,不管末尾是不是0都会完整显示。

  • 使用str.format()方法
    如果你习惯用旧一点的格式化方式,也可以这样写:

    print("Temperature in fahrenheit : {:.2f}".format(fahrenheit))
    

    效果和上面的f-string完全一致。

  • 省略round(),直接靠格式化处理
    其实格式化本身就会帮你做四舍五入,所以你甚至可以去掉round()这一行,让代码更简洁:

    def temp_converter(_value):
        fahrenheit = (_value * 9.00 / 5.00) + 32.00
        print(f"Temperature in fahrenheit : {fahrenheit:.2f}")
    
    celcius = float(input(": "))
    temp_converter(celcius)
    

这样调整后,当你输入50的时候,输出就会是Temperature in fahrenheit : 122.00啦~

备注:内容来源于stack exchange,提问作者user778996

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 08:28:14