我试过了:
import numpy as np
import os
outdir= "directory"
a = np.array([[1,2,3],[1,2,3]])
os.chdir(outdir)
np.savetxt("Image.bin", a)
f = open("directory/Image.bin")
m = np.fromfile(f, dtype=np.uint16)
print len(m)
ma = np.array(np.reshape(m, (2,3)))
print ma
但它返回此错误消息:"新数组的总大小必须保持不变"
我试图改变dtype,但它没有工作
答案 0 :(得分:2)
您应该使用np.loadtxt
:http://docs.scipy.org/doc/numpy/reference/generated/numpy.loadtxt.html
尝试:
import numpy as np
a = np.array([[1,2,3],[1,2,3]])
np.savetxt("Image.bin", a)
m = np.loadtxt("Image.bin")
m
现在包含与a
相同的数组。
答案 1 :(得分:1)
numpy
内置了用于将数组保存和加载为二进制文件的函数。
numpy.save('data.npy', data)
将创建文件(如果不这样,它将附加npy)和
data = numpy.load('data.npy')
将从文件中加载它。这比将它们保存为文本文件更快,更节省空间。