Если у вас много, много и много значений, что-то вроде этого может сработать (при условии, что под «списком словарей» вы подразумеваете «словарь списков», так как наличие большого списка словарей с одним ключом / значением пары будет быть глупым, и, таким образом, значения хранятся в dict
как {'A': [3, 45, 34, 4, 2, 5, 94, 2139, 230345, 283047, 230847], 'B': [92374, 324, 345, 345, 45879, 34857987, 3457938457], ...}
):
from multiprocessing import Process, Lock
def sumfunc(lock, key, values):
total = sum(values)
lock.acquire()
print(key + ':', total) # The actual code would be better off utilizing shared multiprocessing.Array objects, but I haven't used them before so am not sure quite how you set them up so decided to leave that aside for now as this is just a theoretical example.
lock.release()
if __name__ == '__main__':
lock = Lock()
for key, values in dict_of_values_to_sum.items():
Process(target=sumfunc, args=(lock, key, values)).start()