2016-03-06 14 views

risposta

2

Gli array di Numpy sono una matrice tipizzata, la matrice in memoria memorizza numeri omogenei e densamente compressi.

L'elenco Python è un elenco eterogeneo, l'elenco in memoria memorizza i riferimenti agli oggetti anziché il numero stesso.

Ciò significa che l'elenco Python richiede il dereferenziamento di un puntatore ogni volta che il codice deve accedere al numero. Mentre l'array numpy può essere elaborato direttamente da operazioni vettoriali di numpy, il che rende queste operazioni vettoriali molto più veloci di qualsiasi altra cosa che è possibile codificare con l'elenco.

Lo svantaggio della serie numpy è che se è necessario accedere a singoli elementi nell'array, numpy dovrà box/unbox il numero in un oggetto numerico python, che può rallentare in determinate situazioni; e che non può contenere dati eterogenei.

+2

È vero per un * elenco *, ma non per un * array *, che esiste anche nella libreria standard. – jonrsharpe

Problemi correlati