欢迎访问宙启技术站
智能推送

numpy.lib.format:NumPy数组的保存和加载

发布时间:2024-01-14 03:21:04

numpy.lib.format是NumPy的一个模块,用于保存和加载NumPy数组。它提供了一种二进制格式来存储和读取NumPy数组,该格式在磁盘上占用很少的空间,并且对于NumPy数组的序列化和反序列化非常高效。

该模块提供了以下函数来保存和加载NumPy数组:

- numpy.lib.format.open_memmap():创建一个NumPy数组的内存映射文件,并返回一个memmap对象。

- numpy.lib.format.open_file():打开一个NumPy数组的二进制文件,并返回一个文件对象。

- numpy.lib.format.write_array():将NumPy数组写入二进制文件。

- numpy.lib.format.read_array():从二进制文件中读取NumPy数组。

下面是一个使用numpy.lib.format保存和加载NumPy数组的示例:

import numpy as np
from numpy.lib.format import open_file, write_array, read_array

# 创建一个NumPy数组并保存到磁盘
arr = np.array([[1, 2, 3], [4, 5, 6]])
with open_file('array.bin', 'wb') as f:
    write_array(f, arr)

# 从磁盘加载NumPy数组
with open_file('array.bin', 'rb') as f:
    loaded_arr = read_array(f)

# 打印加载后的数组
print(loaded_arr)

以上代码首先创建了一个2x3的NumPy数组arr,然后使用open_file函数打开一个名为array.bin的二进制文件,并指定以写入模式打开。接着,使用write_array函数将数组写入文件中。文件对象需要使用with语句包含,以确保在使用后正确关闭。

然后,使用open_file函数再次打开array.bin二进制文件,以读取模式打开。使用read_array函数从文件中读取数组,并将结果存储在loaded_arr变量中。最后,打印加载后的数组loaded_arr。

通过这些函数,我们可以方便地将NumPy数组保存到磁盘并从磁盘加载,非常适合大量数据的存储和读取。此外,由于使用了二进制格式,存储的文件大小相对较小,也更加高效。