Orig 发表于 2023-8-11 10:33:19

python问题

如何让输出结果保留两位小数?

代码如下:

a = input("输入温度:")
if (a[-1] == "c") or (a[-1] == "C"):
    b = eval(a[:-1])
    c = 1.8 * b + 32
    print(c, "F")
elif (a[-1] == "f") or (a[-1] == "F"):
    b = eval(a[:-1])
    c = (b - 32) / 1.8
    print(c, "C")
else:
    print("输入格式错误")

isdkz 发表于 2023-8-11 10:33:33

在Python中,你可以使用格式化字符串的方法来控制输出结果的小数位数。对于保留两位小数,你可以使用"{:.2f}"的格式化字符串。

下面是修改后的代码:

a = input("输入温度:")
if (a[-1] == "c") or (a[-1] == "C"):
    b = eval(a[:-1])
    c = 1.8 * b + 32
    print("{:.2f} F".format(c))
elif (a[-1] == "f") or (a[-1] == "F"):
    b = eval(a[:-1])
    c = (b - 32) / 1.8
    print("{:.2f} C".format(c))
else:
    print("输入格式错误")


在上面的代码中, "{:.2f}" 表示将要格式化的值保留两位小数。使用 format() 方法将变量 c 的值传递给格式化字符串,并在输出结果后添加单位。

这样,输出结果将会保留两位小数。例如,如果输入温度为摄氏度,输出结果将会是如下格式的: xx.xx F 。如果输入温度为华氏度,输出结果将会是如下格式的: xx.xx C 。

陶远航 发表于 2023-8-11 10:33:33

要保留输出结果的两位小数,你可以使用 Python 的格式化字符串来实现。将 print() 函数中的输出结果对应的变量替换为格式化字符串,并指定保留两位小数的格式。

在你的代码中,你可以修改如下:

a = input("输入温度:")
if (a[-1] == "c") or (a[-1] == "C"):
    b = eval(a[:-1])
    c = 1.8 * b + 32
    print(f"{c:.2f} F")# 保留两位小数的格式化输出
elif (a[-1] == "f") or (a[-1] == "F"):
    b = eval(a[:-1])
    c = (b - 32) / 1.8
    print(f"{c:.2f} C")# 保留两位小数的格式化输出
else:
    print("输入格式错误")


使用 {} 表示变量的位置,并在其中使用 :.2f 来表示保留两位小数的格式。

通过这样的修改,输出结果将会保留两位小数。希望这能解决你的问题。如有任何进一步的疑问,请随时提出。
如果问题已经解决,请设置最佳答案

ba21 发表于 2023-8-11 10:49:13

不好意思占个楼。
页: [1]
查看完整版本: python问题