如何管理多个大数组pythonic。

2024-10-03 17:25:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我是科学计算的python用户。现在,我有一些numpy数组,每个数组的大小都很大。因此,我不可能在同一时间把所有的记忆都缩短。我想把数组保存在磁盘上,每次一个接一个地读取它们来做一些计算。如何进行这个过程pythonicly?你知道吗

我知道如果所有数据都存储在内存中,我可以创建一个名为array\u list的列表,如下所示:

array_list = []
for i0 in range(n_array):
    t_ayyay = do_some_calculate()
    array_list.append(t_ayyay)

当我想使用它们时:

for i0 in range(n_array):
    t_ayyay = array_list[i0]
    # do something.

如何在磁盘中保存数组列表,并且我可以使用索引读取每个对象而不将它们全部加载到内存中?你知道吗

谢谢。你知道吗


Tags: 内存用户innumpy列表forrange数组
1条回答
网友
1楼 · 发布于 2024-10-03 17:25:46

Pickle是你序列化的朋友。你知道吗

import pickle

some_list = [....]
pickle_out = open("some_list.pickle", "w")
pickle.dump(some_list, pickle_out)
pickle_out.close()

打开保存的阵列

pickle_in = open("some_list.pickle", "r")
some_list = pickle.open(pickle_in)

相关问题 更多 >