Perché usiamo gli array numpy al posto di matrici semplici in python? Qual è la principale differenza tra loro?Qual è la differenza tra l'array NumPy e il semplice array python?
risposta
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.
È vero per un * elenco *, ma non per un * array *, che esiste anche nella libreria standard. – jonrsharpe
Cosa intendi per matrice? Intendi veramente [matrici] (https://docs.python.org/3/library/array.html) o vuoi dire 'list' (' [1, 2, 3] 'è una lista, non un array)? –
Se in realtà si intende array, per favore chiarire. – jonrsharpe