2017-10-09 76 views
0

我有嵌套列表如下:如何在python中将嵌套列表四舍五入到小数点后两位?

A=[[2,3.55,40.9998],[53.656,65.9],[0.2222]] 

如何四舍五入到小数点后2位为A,下面是我的预期输出:

A=[[2.00,3.55,41.00],[53.66,65.90],[0.22]] 

我尝试用圆(A,2 )但没有能力,任何人都可以与我分享一些想法?

+0

您是否需要修改列表,或者只是将其格式化为打印格式? –

+0

我需要修改列表 –

回答

2

如果您需要修改的列表,你必须遍历它与任何一个for循环

for sublst in A: 
    for i, val in enumerate(sublst): 
     sublst[i] = round(val, 2) 

或嵌套列表理解

new_A = [[round(val, 2) for val in sublst] for sublst in A] 

对于什么是值得,如果你只需要格式化打印,你可以使用字符串格式。

for line in A: 
    print(" ".join(map("{:.2f}".format, line))) 
    # equivalent to 
    print(" ".join([{:.2f}.format(val) for val in line])) 
-1

你可以去格式的功能,例如:

a = 2的 打印(格式(一, '.2f'))

其结果将是:2.00

相关问题