Python 保存/加载数据队列

Python 保存/加载数据队列,python,python-3.x,Python,Python 3.x,我正在使用collections.deque生成内存缓冲区。目前,我正在从左到右插入值,每个插入都包含:一个numpy数组、一个float值、另一个float值和其他numpy数组 我的缓冲区的一般形式如下: my_buffer = deque([numpy array, float, float, numpy array], [numpy array, float, float, numpy array]) 我想做的是将数据保存到我的计算机中,然后能够将其作为同一对象加载。目前,我已尝试使用

我正在使用collections.deque生成内存缓冲区。目前,我正在从左到右插入值,每个插入都包含:一个numpy数组、一个float值、另一个float值和其他numpy数组

我的缓冲区的一般形式如下:

my_buffer = deque([numpy array, float, float, numpy array], [numpy array, float, float, numpy array])
我想做的是将数据保存到我的计算机中,然后能够将其作为同一对象加载。目前,我已尝试使用numpy保存它,使用:

np.save(list(my_buffer))
但是,我想直接保存deque。有没有办法将这种缓冲区保存到我的磁盘内存中,然后加载它

pickle.dump(my_buffer, open('buffer.pkl', 'wb'))

my_buffer_2 = pickle.load(open('buffer.pkl', 'rb'))
我不知道您的
array
是什么,但是,它对我的
array
实例有效

class array:
    def __init__(self, l):
        self.l = l

从deque中获取项目,转换为list或numpy数组并保存它-使用json或numpy的数组函数。最后,您可以尝试直接使用
pickle
什么是
array
?@furas:谢谢,目前我正在像np.array(list(my_buffer))那样保存它,然后使用np.save。但是,我不确定是否可以加载numpy数组,然后返回一个deque。@ghchoi抱歉,我复制了一个缓冲区的打印。这是一个np.ndarray