There are several differences:
- You can append elements to a list, but you can't change the size of a
´numpy.ndarray´ without making a full copy.
- Lists can containt about everything, in numpy arrays all the
elements must have the same type.
- In practice, numpy arrays are faster for vectorial functions than
mapping functions to lists.
- I think than modification times is not an issue, but iteration over
the elements is.
- Numpy arrays have many array related methods (´argmin´, ´min´, ´sort´,
etc).
I prefer to use numpy arrays when I need to do some mathematical operations (sum, average, array multiplication, etc) and list when I need to iterate in 'items' (strings, files, etc).