La función numpy.array es la forma más simple de crear un array a partir de un iterador como una simple lista (el iterador también puede ser otro array NumPy). En este ejemplo, partimos de una lista n y creamos un array, mostrando el número de dimensiones (atributo ndim), su tamaño (accesible a través de su atributo shape) y el tipo de los datos que contiene (accesible a través de su atributo dtype):
El atributo shape devuelve una tupla con tantas cifras como dimensiones tiene el array, y cada cifra indica el número de elementos en la correspondiente dimensión (este atributo también puede ser usado para fijar el tamaño del array).
En este caso vemos que el array m recién creado tiene una única dimensión y 3 elementos en dicha dimensión. El tipo de los valores contenidos en él es int32 (enteros representados con 32 bits).
Si alguno de los datos de la lista n utilizada hubiese sido un número real, por ejemplo, la función array habría modificado el tipo del array creado para adoptar uno que englobase a todos los tipos involucrados en la lista -en este caso el tipo float correspondiente a los números reales-:
Podemos encontrar información sobre los tipos básicos en este enlace:
En un caso extremo, la función adoptaría como tipo común la cadena de texto (string):
En este ejemplo, la lista a partir de la que se crea el array incluye números enteros, números reales y un string, siendo este último tipo el único capaz de englobar a todos ellos, por lo que el tipo del array pasa a ser "<U32", cadena de texto con caracteres unicode codificado como "little-endian" (con el bit menos significativo situado a la izquierda, lo que sabemos por el símbolo "<"). En la imagen se muestra también el array creado, quedando claro el tipo de sus elementos. Este proceso de modificación del tipo de forma que englobe a todos los tipos del iterador a partir del cual se crea el array es lo que se conoce como coerción de tipo.