Efficiency of passing arrays to a function vs unpickling the array inside the function in Python?
It depends on your requirement. If you pass an array to the function, python passes the reference of that array. Whereas if you pass the array in the form of unpacked arguments, objects comprising the array is passed. 
Within the function if the order of your original array is not getting modified, it is better to pass it as reference i.e as a argument.
Sorry in advance, I know almost nothing about efficiency, so I might need a little extra help. 
I have a function that calls another function and it passes in pretty big arrays. Due to limitations in memory, I've just been saving the arrays to pickle files and unpickling inside the second function. Just for context, I have 64 pickle files that is each 47 megabytes (3 gigs total). I'm calling this function upwards of 100,000 times. I'm assuming that unpickling is far less efficient than unpickling once and passing the arrays, but I was wondering on the order of how much time I'd be losing in   doing the way I'm doing it now and whether there are more efficient ways of doing this