1. 使用`numpy.tofile()`函数将`numpy`数组直接存储到二进制文件中。
import numpy as np
创建一个numpy数组
array = np.array([1, 2, 3, 4, 5])
将数组存储到二进制文件
array.tofile('binary_file.bin')
2. 使用`struct`模块将数据打包成二进制格式后写入文件。
import struct
打包整数数据
num = 123
packed_data = struct.pack('i', num)
写入二进制文件
with open('binary_file.bin', 'wb') as f:
f.write(packed_data)
3. 使用`mmap`模块进行内存映射,以适应大量IO的场景。
import numpy as np
import mmap
创建一个numpy数组
array = np.array([1, 2, 3, 4, 5])
将数组存储到二进制文件
with open('binary_file.bin', 'wb') as f:
f.write(array.tobytes())
使用内存映射读取文件
with open('binary_file.bin', 'rb') as f:
mmapped_file = mmap.mmap(f.fileno(), 0)
读取数据
data = np.frombuffer(mmapped_file, dtype=np.float32)
以上方法可以帮助你在Python中存储二进制数据。请根据你的具体需求选择合适的方法