【问题标题】:How to add second elements of a tuple whose first elements meet a condition?如何添加第一个元素满足条件的元组的第二个元素?
【发布时间】:2020-07-14 19:29:58
【问题描述】:

我有一个很大的元组列表:

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

但是,如果可能的话,我需要一个比这更短的 sn-p。

【问题讨论】:

    标签: python-3.x list numpy sum tuples


    【解决方案1】:

    print(sum([i[1] for i in A if 3 &lt;= i[0] &lt;= 11]))

    这是一条线:)

    希望对你有帮助

    【讨论】:

    • 谢谢!它比我刚刚添加到问题中的要短:)
    猜你喜欢
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-16
    • 2022-12-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多