【发布时间】:2019-04-21 21:57:03
【问题描述】:
我正在试验 Numba 与 Numpy 的行为以进行数组索引,但我遇到了一些我不太了解的东西;所以我希望有人可以为我指出正确的方向,这可能是一个非常简单的问题。下面是两个函数,它们都使用 np.arange 命令创建一个空数组。然后,我使用索引 0 example[0] = 1“追加”(尝试各种方法以查看 Numba 和 Numpy 如何执行/中断)到数组。
带有jit 的Numba 函数运行没有错误,但Numpy 示例给出了错误:
IndexError: index 0 is out of bounds for axis 0 with size 0
Numpy 错误是有道理的,但我不确定为什么启用了jit 的Numba 允许操作没有错误。
import numba as nb
import numpy as np
@nb.jit()
def funcnumba():
'''
Add item to position 0 using Numba
'''
example = np.arange(0)
example[0] = 1
return example
def funcnumpy():
'''
Add item to position 0 using Numpy. This produces an error which makes sense
'''
example = np.arange(0)
example[0] = 1
return example
print(funcnumba())
print(funcnumpy())
【问题讨论】: