I use joblib to parallelise a function (with multiprocessing). But, this function return 4 values but when I get the results from Parallel it gives me only 3 values
from joblib import Parallel, delayed
import numpy as np
from array import array
import time
def best_power_strategy():
powerLoc = {0}
speedLoc = {1}
timeLoc = {2}
previousSpeedLoc = {3}
return powerLoc,speedLoc,timeLoc,previousSpeedLoc
if __name__ == "__main__":
realRiderName=['Rider 1', 'Rider 2', 'Rider 3']
powerLoc = {}
speedLoc = {}
timeLoc = {}
previousSpeedLoc = {}
powerLoc,speedLoc,timeLoc,previousSpeedLoc = Parallel(n_jobs=3)(delayed(best_power_strategy)() for rider in realRiderName)
print(powerLoc)
print(speedLoc)
print(timeLoc)
print(previousSpeedLoc)
and the result is :
ValueError: not enough values to unpack (expected 4, got 3)
Does someone has an idea?
Thanks in advance