python numpy二进制存取

根据数据特点,调整存储占用的空间大小。
因为数组中全是0和1,所以用单字节(np.int8)存储。如果是浮点或其他格式,可以用其他类型。

# 存
>>> f = open(c, 'ab+')
>>>> d1 = np.array([0,0,1], dtype=np.int8)
>>> f.write(d1)
3
>>> d2 = np.array([0,1,1], dtype=np.int8)
>>> f.write(d2)
3
>>> f.close()
# 取
>>> f = open(c, 'rb')
>>> d3 = f.read()
>>> d3 = np.frombuffer(d3, dtype=np.int8)
>>> d3
array([0, 0, 1, 0, 1, 1], dtype=int8)

numpy的数据类型:https://www.runoob.com/numpy/numpy-dtype.html

猜你喜欢

转载自blog.csdn.net/qxqxqzzz/article/details/107762285