Я хотел бы знать, как я могу получить общее значение первого квадранта:
aa = { (0, 1) : 4, (2, 2) : 6, (3, 1) : 7, (1, 2) : 10, (3, 2) : 11,(0, -5) : 4, (-2, -2) : 6, (-3, 1) : 7, (1, -2) : 10, (-3, 2) : 11 }
values = aa.values()
total = sum(values)
for (x,y) in aa:
if (x>0 & y>0):
print(total)
else :
pass
Вы можете использовать метод sum
с условием для координат x и y.
aa = {(0, 1): 4, (2, 2): 6, (3, 1): 7, (1, 2): 10, (3, 2): 11, (0, -5): 4, (-2, -2): 6, (-3, 1): 7, (1, -2): 10,
(-3, 2): 11}
total = sum(aa[(x,y)] for x,y in aa if x >= 0 and y >= 0)
print(total) # prints 38
Поправьте меня, если я ошибаюсь, но если я хочу поместить это в функцию, это будет: def intensites(aa): aa = { (0, 1) : 4, (2, 2) : 6, (3, 1): 7, (1, 2) : 10, (3, 2) : 11, (0, -5) : 4, (-2, -2) : 6, (-3, 1) : 7, (1, - 2) : 10, (-3, 2) : 11 } total = sum(aa[(x,y)] для x,y в aa, если x>=0 и y >= 0) print(total) # выводит 34 (интенсивность ([]))
Да, я обновил, чтобы включить >= 0 для x и y. Раньше было просто > 0.