1

我一直在为我的一个班级做这项作业,即使它是 0.00,我也不知道如何四舍五入到小数点后 2

我正在打印一张表格,看起来很奇怪这是我的结果:

             1           10000.0             600.0           10600.0
             2           10600.0             636.0           11236.0
             3           11236.0            674.16          11910.16
             4          11910.16            714.61          12624.77
             5          12624.77            757.49          13382.26
             6          13382.26            802.94          14185.19
             7          14185.19            851.11           15036.3
             8           15036.3            902.18          15938.48
             9          15938.48            956.31          16894.79
            10          16894.79           1013.69          17908.48

我打印了一个项目列表,我将 [0] 舍入为 1,其余部分舍入为 2(抱歉,有些 var 是法语 XD)

for n in i_liste_l:
    if n == i_liste_l[0]:
        n = int(round(n,0))
        i_liste_l[0] = n
    else:
        index_i = int(i_liste_l.index(n))
        i_liste_l[index_i] = float(round(n,2))
i = i+1

print('{:>{width}}{:>{width}}{:>{width}}{:>{width}}'.format(*i_liste_l,width = indent))
4

3 回答 3

4

出于问题的目的,我填写了一些值:

print('{:>{width}}{:>{width}}{:>{width}}{:>{width}}'.format(1.2, 1, 4.32, 65.3, width=7))
#>>>     1.2      1   4.32   65.3

你想要.Nf格式化程序:

print('{:>{width}.2f}{:>{width}.2f}{:>{width}.2f}{:>{width}.2f}'.format(1.2, 1, 4.32, 65.3, width=7))
#>>>    1.20   1.00   4.32  65.30
于 2013-09-26T01:48:29.460 回答
0

您可以使用:

print('%5.2f' % 1.0)

打印

 1.00 # a space in front, 4 characters for the numbers, total 5
于 2013-09-26T01:48:17.637 回答
0

您需要使用“%.2f”

例子 -

>>> x = 10.0/2
>>> print x
5.0
>>> print "%.2f" % x
5.00
>>> x = 5.0/2
>>> print "%.2f" % x
2.50
于 2013-09-26T01:51:26.963 回答