Arrays are fundamental data structures that store elements of the same type. In Python, lists are used instead of arrays since there is no native array type. Lists can store elements of different types, making them more flexible than arrays. The NumPy package provides a multidimensional array object that allows high-performance operations and is used for scientific computing in Python. NumPy arrays have attributes like shape, size, type and support various operations like sum, min, max. Multidimensional arrays can be created in NumPy using functions like array, linspace, logspace, arange and initialized with zeros or ones.