, arr, allow_pickle=True, fix_imports=<no value>)[source]#

Save an array to a binary file in NumPy .npy format.

filefile, str, or pathlib.Path

File or filename to which the data is saved. If file is a file-object, then the filename is unchanged. If file is a string or Path, a .npy extension will be appended to the filename if it does not already have one.


Array data to be saved.

allow_picklebool, optional

Allow saving object arrays using Python pickles. Reasons for disallowing pickles include security (loading pickled data can execute arbitrary code) and portability (pickled objects may not be loadable on different Python installations, for example if the stored objects require libraries that are not available, and not all pickled data is compatible between different versions of Python). Default: True

fix_importsbool, optional

The fix_imports flag is deprecated and has no effect.

Deprecated since version 2.1: This flag is ignored since NumPy 1.17 and was only needed to support loading some files in Python 2 written in Python 3.

See also


Save several arrays into a .npz archive

savetxt, load


For a description of the .npy format, see numpy.lib.format.

Any data saved to the file is appended to the end of the file.


>>> from tempfile import TemporaryFile
>>> outfile = TemporaryFile()
>>> x = np.arange(10)
>>>, x)
>>> _ = # Only needed to simulate closing & reopening file
>>> np.load(outfile)
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> with open('test.npy', 'wb') as f:
..., np.array([1, 2]))
..., np.array([1, 3]))
>>> with open('test.npy', 'rb') as f:
...     a = np.load(f)
...     b = np.load(f)
>>> print(a, b)
# [1 2] [1 3]