Converting a matrix created with MATLAB to Numpy array with a similar syntax
Question: I'm playing with the code snippets of the course I'm taking which is
originally written in MATLAB. I use Python and convert these matrices to
Python for the toy examples. For example, for the following MATLAB matrix:

    
    
    s = [2 3; 4 5];
    

I use

    
    
    s = array([[2,3],[4,5]])
    

It is too time consuming for me to re-write all the toy examples this way
because I just want to see how they work. Is there a way to directly give the
MATLAB matrix as string to a Numpy array or a better alternative for this?

For example, something like:

    
    
    s = myMagicalM2ArrayFunction('[2 3; 4 5]')
    


Answer: [`numpy.matrix`](http://docs.scipy.org/doc/numpy/reference/generated/numpy.matrix.html)
can take string as an argument.

    
    
    Docstring:
    matrix(data, dtype=None, copy=True)
    
    [...]
    
    Parameters
    ----------
    data : array_like or string
       If `data` is a string, it is interpreted as a matrix with commas
       or spaces separating columns, and semicolons separating rows.
    

* * *
    
    
    In [1]: import numpy as np
    
    In [2]: s = '[2 3; 4 5]'    
    
    In [3]: def mag_func(s):
       ...:     return np.array(np.matrix(s.strip('[]')))
    
    In [4]: mag_func(s)
    Out[4]: 
    array([[2, 3],
           [4, 5]])
    

