Skip to main content
`Ctrl`+`K`

# numpy.save

numpy.save(file, arr, allow_pickle=True, fix_imports=<no value>)

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

  Parameters:
    file file, 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.

    arr array_like

      Array data to be saved.

    allow_pickle bool, 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_imports bool, 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 in Python 2 some files written in Python 3.

  See also

  `savez`

    Save several arrays into a `.npz` archive

  `savetxt`, `load`

  Notes

  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.

  Examples

      >>> import numpy as np

      >>> from tempfile import TemporaryFile
      >>> outfile = TemporaryFile()

      >>> x = np.arange(10)
      >>> np.save(outfile, x)

      >>> _ = outfile.seek(0) # 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.save(f, np.array([1, 2]))
      ...     np.save(f, 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]