问候,
我遇到了一个有趣的错误,并且想知道是否有人知道原因。
我创建了几个ntype对象的numpy数组,并希望用空字符串初始化它们,所以我做了以下创建它们:
txtInputs=empty((7,12), dtype=object)
txtInputs[:, :]=''
repeated...
除了这些变量是函数的局部变量并且返回时它们消失之外,它们之后的使用方式是不相关的。但是,我发现当我调用连续多次执行此操作的函数时,我的程序崩溃时出现错误,说pythonw.exe已停止工作。此崩溃是一致的,并且在特定数量的呼叫之后发生,并且该数字永远不会更改。
但是,如果我用第二行代替:
txtInputs.fill('')
它不会崩溃。使用[:,:] =''填充numpy数组??
有什么问题谢谢。
PS。我正在使用python 2.5和numpy 1.0.4
答案 0 :(得分:4)
numpy 1.5.1不会发生此错误。我们在numpy 1.0.4的时候修复了一些bug,特别是对象和字符串dtypes。这可能就是其中之一。从那以后,这个bug显然已得到修复。