мой вопрос может показаться похожим на другие, но я пока что не нашел ничего похожего на то, что мне нужно (я все еще ищу в этом случае). У меня есть проект (подробности о проекте не нужны), когда я нахожу себя с конечным списком отрицательных значений и 2 другими конечными наборами положительных значений (числа с плавающей запятой). Возьмите примеры, приведенные ниже:
negative_values = [-0.246497, -0.341068]
positive_values_1 = [0.522148, 0.923764, 0.112573, 0.401668]
positive_values_2 = [0.281474]
Размер этих наборов может варьироваться (от пустого до размера N). Что мне нужно сделать, это взять значения в первом положительном наборе и попытаться (может быть невозможно в зависимости от набора) создать значения в отрицательном наборе 0, сложив их вместе значение по значению.
Если это невозможно только с первым, тогда используйте второй набор, а если это все еще невозможно, тогда сделайте столько значений в 'absolute_values' 0, сколько возможно.
При использовании вышеуказанных наборов это будет выглядеть примерно так:
def cancelOut(negative_values, positive_values_1, positive_values_2):
# Algorith doing something
new_negative_values = [0, 0]
new_positive_values_1 = [0, 0.858347, 0.112573, 0.401668]
new_positive_values_2 = [0.281474]
Что произошло, так это то, что первые значения в Positive_values_1 сделали первое значение в Positive_value 0 и увеличили второе значение ближе к 0. Затем часть второго значения в Positive_values_1 сделала второе значение в Positive_value 0, а затем алгоритм завершен , Я просто хочу добавить значения в положительных наборах к значениям в absolute_value по одному, пока все они не станут равными 0 или пока все наборы positive_value не будут равны 0.
Я не знаю, есть ли простой способ сделать это или мне нужно специально перебирать каждое установленное значение по значению и вычислять, что я хочу.
Заранее всем спасибо!