Un file NPY (NumPy Array File) è un formato di file binario standard utilizzato per archiviare dati numerici, specificamente array NumPy, che sono la struttura dati fondamentale nella libreria NumPy per Python. Gli array NumPy sono altamente ottimizzati per le operazioni numeriche e sono ampiamente utilizzati nel calcolo scientifico, nell'analisi dei dati, nel machine learning e nell'intelligenza artificiale. Il formato NPY consente la serializzazione e deserializzazione efficiente di questi array, preservando tutti i metadati dell'array, inclusa la sua forma (shape), il tipo di dati (dtype) e se l'array è contiguo in stile Fortran o in stile C. Ciò assicura che quando un file NPY viene caricato, l'array venga ricostruito esattamente come è stato salvato, mantenendo l'integrità e la precisione dei dati. A differenza dei formati di testo semplice come CSV, i file NPY sono binari, il che li rende molto più veloci da leggere e scrivere, specialmente per grandi set di dati, e consumano meno spazio su disco. Sono particolarmente utili per salvare risultati intermedi di calcoli, condividere set di dati tra diversi script o progetti Python e per l'archiviazione persistente dei pesi dei modelli o degli insiemi di caratteristiche nei flussi di lavoro di machine learning. Sebbene siano principalmente associati a Python e NumPy, la semplicità e l'efficienza del formato li rendono uno standard de facto per lo scambio di dati numerici all'interno dell'ecosistema scientifico di Python.