What is the difference between ndarray and array in numpy?

flxb picture flxb · Apr 8, 2013 · Viewed 104.5k times · Source

What is the difference between ndarray and array in Numpy? And where can I find the implementations in the numpy source code?

Answer

wim picture wim · Apr 8, 2013

numpy.array is just a convenience function to create an ndarray; it is not a class itself.

You can also create an array using numpy.ndarray, but it is not the recommended way. From the docstring of numpy.ndarray:

Arrays should be constructed using array, zeros or empty ... The parameters given here refer to a low-level method (ndarray(...)) for instantiating an array.

Most of the meat of the implementation is in C code, here in multiarray, but you can start looking at the ndarray interfaces here:

https://github.com/numpy/numpy/blob/master/numpy/core/numeric.py