我想用python写一个快速计算,不知道如何处理:
values = [(0, 4, .3), (6, 2, 3), (3, 7, 2.2), (5, 5, .5), (3, 5, .8), (7, 7, .3)]
假设我们使用(x,y,z(来表示值中的元组
criteria = [(a, b, c, d)]
如果(a<=x<b(和(c<=y<d(,然后把所有的z值加起来。
我的结果只是显示满足上述标准的z的和
您可以使用列表理解在一行中实现这一点。
# Criteria
(a, b, c, d) = (-1, 10, 0, 10)
# Output
zs = [z for (x, y, z) in values if a <= x < b and c <= y < d]
print(sum(zs))
不完全确定为什么将criteria
指定为数组,但我认为如果您想检查多个标准,那么这个例子很容易扩展。