我有一个函数接受浮点参数(通常是整数或有一个有效数字的小数),我需要在一个有两位小数的字符串中输出值(5→5.00,5.5→5.50等)。如何在Python中做到这一点?


当前回答

如果你想在调用输入时得到一个小数点后两位有限制的浮点值,

看看这个~

a = eval(format(float(input()), '.2f'))   # if u feed 3.1415 for 'a'.
print(a)                                  # output 3.14 will be printed.

其他回答

你可以使用字符串格式化操作符:

>>> '%.2f' % 1.234
'1.23'
>>> '%.2f' % 5.0
'5.00'

操作符的结果是一个字符串,所以你可以把它存储在一个变量中,打印等等。

如果你想在调用输入时得到一个小数点后两位有限制的浮点值,

看看这个~

a = eval(format(float(input()), '.2f'))   # if u feed 3.1415 for 'a'.
print(a)                                  # output 3.14 will be printed.

因为这篇文章可能会在这里一段时间,让我们也指出python 3的语法:

"{:.2f}".format(5)

Python 3

print(f"{number:.2f}")

一种更简短的格式化方法。

如果你真的想改变数字本身,而不是仅仅以不同的方式显示它,请使用format()

格式为小数点后2位:

format(value, '.2f')

例子:

>>> format(5.00000, '.2f')
'5.00'