我有很多元组:
A = [(1, 2), (2, 4), (3, 5), ..., (11, 3), (23, 1), (29, 0)]
现在,我想将第一个元素在特定范围内的第二个元素 [3,11] 加起来,其结果应为5 + ... + 3。
这是我的解决方案:
xs, ys = [i[0] for i in A], [i[1] for i in A]
my_sum = 0
for i, j in zip(xs, ys):
if 3<=i[0]<=11:
my_sum += j
但是,如果可能的话,我需要比这更短的代码段。
答案 0 :(得分:2)
print(sum([i[1] for i in A if 3 <= i[0] <= 11]))
这是一个班轮:)
希望对您有帮助