2017-10-09 17 views
0

は、私は次のようにネストされたリストを持っている:入れ子リストを小数点以下2桁に丸める方法は?

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

がどのようにAのために小数点以下2桁に丸めるために、以下の私の予想出力されます:私が使用ラウンドにしようと

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

次の例のように、フォーマット機能のために行くことができます。

= 2 プリント(フォーマット( '.2f'))

結果は以下のようになります。2.00

関連する問題