我有一个在 pypy 中运行的主程序,它创建三个 2D numpy 数组。我想将它们保存到一个文件中,然后使用 python 打开它们并使用 matplotlib.pyplot 绘制它们。
目前 pypy 不适用于 numpy.save,是否有一种简单的替代方法可以在使用 pypy 时将一组 numpy 数组保存到文件中?
库 pickle 与 pypy 一起使用。他就是我保存/加载 numpy 数组的方式
import pickle
import numpy
保存(使用pypy):
outfile1 = open(r'C:\pythontmp\numpyArray.pkl', 'w+b')
pickle.dump(numpyArray.tolist(), outfile1)
outfile1.close()
加载(使用python):
infile1 = open(r'C:\pythontmp\numpyArray.pkl', 'r+b')
file1 = pickle.load(infile1) # This is a list
infile1.close()
numpyArray = numpy.array(file1) # This is a numpy array
您也许可以使用ndarray.tofile () 和numpy.fromfile ()。这失去了在具有不同字节序的机器之间移动数据的能力,但应该比 save() 更快。
例子:
a = numpy.zeros( (5,5) )
a.tofile('a.dat')
b = numpy.fromfile('a.dat')