0

我尝试loadtxt('x.txt', delimiter=' ')在大小为 6.8 GB 的文件上使用。这会产生内存错误。我的电脑有 8 GB 内存。当我查看我的计算机性能计时,我发现 Python 已经在仅使用 3.4 GB 内存时给出了错误消息。为什么 Python 在让步之前不尝试使用剩余的 4,6 GB?

你的!

每页。

4

2 回答 2

3

numpy.loadtxt吗?查看源代码,它将已解析的行(指定类型的列表或元组)推送到列表中,然后将其打包到数组中。这将消耗比文件大小甚至float包含文件值的打包数组的大小更多的内存。我会说即使在 8 GB RAM 机器上使用 64 位 Python 也不太可能加载此文件。

于 2012-08-25T18:18:50.133 回答
0

您的 Python 可能是在 32 位架构中编译的,因此它无法处理超过 4 GB 的内存。要解决此问题,请在 64 位操作系统上安装 64 位 Python。

PS。他放弃了 3.4(不是 4 GB),因为保留了部分地址空间。

于 2012-08-25T17:50:09.023 回答