在Python中显示一个有两位小数的浮点数

我有一个函数采用浮点参数(通常是整数或小数位,有一个有效数字),我需要输出一个string有两位小数(5 – > 5.00,5.5 – > 5.50等)的值。 我怎样才能在Python中做到这一点?

您可以使用string格式化运算符:

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

运算符的结果是一个string,所以你可以将它存储在一个variables,打印等。

由于这篇文章可能在这里有一段时间,我们还要指出python 3语法:

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

string格式:

 print "%.2f" % 5 

使用pythonstring格式。

 >>> "%0.2f" % 3 '3.00' 

f-string格式:

这是Python 3.6中的新增function – 将string像往常一样放在引号中,并以f'...作为前缀,就像您要对原始string执行…一样。 然后,把任何你想放在你的string,variables,数字,大括号f'some string text with a {variable} or {number} within that text'放在你的f'some string text with a {variable} or {number} within that text' ,Python会像以前的string格式化方法一样计算,除了这个方法更可读。

 >>>a = 3.141592 >>>print(f'My number is {a:.2f} - look at the nice rounding!') My number is 3.14 - look at the nice rounding! 

你可以看到在这个例子中,我们使用与以前的string格式化方法相似的方式来格式化小数位 。

NB a可以是一个数字或variables。

使用Python 3语法:

 print('%.2f' % number)