簡體   English   中英

如何計算列表中整數的絕對值之和?

[英]How to calculate the sum of the absolute value of integers in a list?

我試圖在這樣的列表中計算 nums 的 abs 值的總和:

stage = sum(sum(abs(board))) # board is a list named before

它返回“abs()的錯誤操作數類型:'list'”

所以我嘗試使用 map 像:

tmp = list(map(abs,board))

但是,錯誤信息保持不變。 我能做些什么?

使用'board'之和的語句如下所示:

stage = sum(sum(board))
colfull = numpy.zeros((8, 8), dtype=numpy.int64)
colfull[:,numpy.sum(map(abs,board), axis = 0) == 8] = True

您需要map (到 map 的abs )和sum (對值求和)。 因此

tmp = sum(map(abs, board))

您可以使用傳遞給sum()的生成器表達式來執行此操作:

stage = sum(abs(x) for x in board)

您可以在原始PEP中閱讀有關生成器表達式的更多信息。

暫無
暫無

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

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