gpt4 book ai didi

python - 如何对列表列表中元组的第二个元素求和?

转载 作者:行者123 更新时间:2023-11-28 19:52:25 25 4
gpt4 key购买 nike

我有一个名为 allBins 的列表列表,其中包含几个代表不同 bin 的列表,在这些 bin 中是不同数量的元组,格式为 (iD, volume)。我需要通过对元组的第二个元素求和来遍历以对每个容器中的项目的体积求和。

我试过很多东西:sum(bin[1] for bin in allBins) 给我一个“列表索引超出范围”的错误,大概是因为某些 bin 有多个元组?

allBins = [[(3,20)],[(1,11),(0,6)],[(4,16),(2,5)]]

我需要一行代码,根据我选择求和的 bin,给我以下整数:

第一个垃圾箱:20

第二个箱子:17

第三个箱子:21

最佳答案

您可以使用列表理解:

allBins = [[(3,20)],[(1,11),(0,6)],[(4,16),(2,5)]]

print([sum(y[1] for y in x) for x in allBins])
# [20, 17, 21]

处理您的实际需求:“我需要某种循环或理解,具体取决于我选择求和的 bin”:

allBins = [[(3,20)],[(1,11),(0,6)],[(4,16),(2,5)]]

bin_number = 2
print(sum(x[1] for x in allBins[bin_number-1]))
# 17

您可以指定 bin_number,上面的代码会找到该特定 bin 的总和。

关于python - 如何对列表列表中元组的第二个元素求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54751783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com