NumPy 是一个用于科学计算的 Python 库,它提供了多维数组对象、各种派生对象(如masked arrays 和 matrices),以及用于数组快速操作的各种函数。NumPy 中的数组存储和文件操作功能非常强大,可以方便地将数组数据存储到文件中,以及从文件中读取数据到数组。
NumPy 提供了多种方法来将数组数据存储到文件中,其中最常用的是 numpy.save()
和 numpy.savez()
函数。这些函数可以将数组以二进制格式保存到 .npy
或 .npz
文件中。
.npy
文件:用于存储单个数组。.npz
文件:用于存储多个数组,可以看作是一个压缩的存档文件。numpy.save()
保存单个数组import numpy as np
# 创建一个数组
arr = np.array([[1, 2, 3], [4, 5, 6]])
# 将数组保存到文件
np.save('array_file.npy', arr)
numpy.savez()
保存多个数组import numpy as np
# 创建两个数组
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
# 将多个数组保存到一个文件
np.savez('multiple_arrays.npz', array1=arr1, array2=arr2)
import numpy as np
# 读取单个数组
loaded_arr = np.load('array_file.npy')
print(loaded_arr)
# 读取多个数组
loaded_arrays = np.load('multiple_arrays.npz')
print(loaded_arrays['array1'])
print(loaded_arrays['array2'])
原因:可能是由于磁盘故障、程序崩溃或不正确的文件操作导致的。
解决方法:
原因:保存和读取时使用了不同的数据类型或编码方式。
解决方法:
allow_pickle
参数来允许加载包含 Python 对象的数组(例如,使用 dtype=object
创建的数组)。loaded_arr = np.load('array_file.npy', allow_pickle=True)
通过以上方法,可以有效地将 NumPy 数组数据存储到文件中,并在需要时准确地读取出来。
领取专属 10元无门槛券
手把手带您无忧上云