簡體   English   中英

如何在python中將嵌套列表四舍五入到小數點后兩位?

[英]How to round nested list into 2 decimal places in python?

我有如下嵌套列表:

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

如何將A的小數點后兩位取整,這是我的預期輸出:

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

我嘗試使用round(A,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]))

您可以使用格式功能,例如:

a = 2打印(format(a,'.2f'))

結果將是:2.00

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM