我已经搜索过,但找不到我正在寻找的在处理元组时添加总和的方法。 a 和 b 都是不可变的元组,我正在尝试添加它们的值以便找到最大值。我知道如何通过调用 sum 函数和 max() 来使用字典,但不知道如何使用元组,所以请提供任何帮助。我知道这有点棘手,因为它是一个元组,而元组是不可变的并且无法更改,但我不会更改它们,我只想知道总和并将最大的一个添加到另一个元组。
a = [(1,2),(4,5),(1,0)]
b = [(3,2),(9,4),(2,2)]
输出:
a=[(3),(9),(1)]
b=[(5),(13),(4)]
因为元组 a 中的 (4,5) = 9 是 a 的最大值,将它移动到另一个元组,a 现在应该是这样的:
a = [(1,2),(1,0)]
元组 b 也是如此。
请您参考如下方法:
元组的不可变与此无关。您仍然可以在此处使用 max 和 sum:
>>> max(a, key=sum)
(4, 5)
然后用它做任何你想做的事。完整的咒语可能如下所示:
maximums = []
for tuples in (a, b):
max_tuple = max(tuples, key=sum)
tuples.remove(max_tuple)
maximums.append(tuples)
