我试图通过引用它们作为索引在布尔数组中缩短10B顺序整数的内存占用量。换句话说,我需要创建一个包含10,000,000,000个元素的数组,但这很好地融入了“长”范围。当我尝试引用大于sys.maxint的数组索引时,数组爆炸了:python中的长索引数组
x = [False] * 10000000000 Traceback (most recent call last): File "", line 1, in x = [0] * 10000000000 OverflowError: cannot fit 'long' into an index-sized integer
我能做什么?我似乎无法找到网络上的任何人有这个问题......大概答案是“蟒蛇无法处理大于2B的阵列”。
哇,认真吗?即使你可以这样做,这样的阵列也不太适合即使是64 GB的机器。我会建议一种不同的方法。 – 2009-09-17 02:30:18
布尔值是一位。 10bil比特= 1.25兆字节。 – inanutshellus 2009-09-17 02:36:42
(请纠正我的假设,如果我错了!) – inanutshellus 2009-09-17 02:39:06