Python / Numpy错误:PyObject_Call中没有错误的NULL结果

时间:2010-08-26 15:00:25

标签: python numpy

之前我从未见过这个错误,Google上的点击似乎都不适用。我有一个非常大的NumPy数组,它包含布尔值。当我尝试使用numpy.dump()编写数组时,出现以下错误:

SystemError:PyObject_Call

中没有错误的NULL结果

使用所有False值初始化数组,并且我唯一一次访问它是将一些值设置为True,因此我不知道为什么任何值都为null。

当我尝试使用较小的数组运行相同的程序时,我没有得到任何错误。但是,由于错误发生在写入步骤,我不认为这是一个内存问题。有没有其他人看过这个错误?

2 个答案:

答案 0 :(得分:1)

该消息直接来自CPython解释器(请参阅abstract.c方法PyObject_Call)。您可能会在Python或NumPy邮件列表上获得有关该错误消息的更好响应,因为它看起来像C代码中的问题。

写一个简单的例子来演示问题,你应该能够将问题缩小到一个模块然后一个方法。

答案 1 :(得分:1)

看起来这可能是使用32位版本的NumPy而不是64位的错误。无论出于何种原因,尽管程序在将数组保存在内存中没有问题,但如果数组中的元素数大于2 ^ 32,则在将数组写入文件时会跳闸。