How to save a Python list of arrays of varied dimensions to mat file
If you don't need a single file, you can iterate through the list and savemat each entry into a separate file. Then iterate through that directory and load each file into a cell array element. 
You can also zip the directory you store these in, to get one file to pass around.
I am going to save a list of arrays into a file that can be read in Matlab. The arrays in the list are of 3-dimensional but varied shapes, so I cannot put them into a single large array. 
Originally I thought I could save the list in to a pickle file and then read the file in Matlab. Later I found Matlab does not support reading the pickle file. I also tried using scipy.io.savemat to save the list to a mat file. The inconsistencies of array dimensions causes saving problems. 
Anyone has ideas of how to solve the problem? It should be noted that the list file is very large in memory (>4 G).