假设在python列表中:
l1 = [2,5,21,6,8,5,9,8,12]
在这里,我希望排除6
到9
的值,即2+5+21+8+12
的列表总和,省略6
到9
的值,即6,8,5,9
的值。
在列表中,数字6位于索引3,数字9位于索引6,所以我希望排除这些值
sum(l1) - sum(l1[l1.index(6):l1.index(9) + 1])
请注意,如果您的列表中有两个或多个出现6或9的事件,这将排除FIRST出现之间的范围
您可以将生成器表达式与sum
一起使用:
l1 = [2, 5, 21, 6, 8, 5, 9, 8, 12]
res = sum(i for i in l1 if not 6 <= i <= 9)
print(res)
输出:
45