gpt4 book ai didi

python - 索引空数组,Numba 与 Numpy

转载 作者:太空宇宙 更新时间:2023-11-03 14:40:49 25 4
gpt4 key购买 nike

我正在试验 NumbaNumpy 的数组索引行为,我遇到了一些我不太明白的事情;所以我希望有人能为我指出正确的方向,这可能是一个非常简单的问题。下面是两个函数,它们都使用 np.arange 命令创建一个空数组。然后,我使用索引 0“追加”(尝试各种方法来查看 NumbaNumpy 如何执行/中断),示例[0] = 1

使用 jitNumba 函数运行没有错误,但是 Numpy 示例给出了错误:

IndexError: index 0 is out of bounds for axis 0 with size 0

Numpy 错误是有道理的,但我不确定为什么启用了 jitNumba 允许无错误操作。

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())

最佳答案

参见 Numba documentation on arrays :

Currently there are no bounds checking for array indexing and slicing (...)

这意味着在这种情况下您将写出数组的边界。由于它只是一个元素,您可能幸运地摆脱了它,但您也可能使程序崩溃,或者更糟的是,悄悄地覆盖其他一些值。参见 issue #730进行讨论。

关于python - 索引空数组,Numba 与 Numpy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53376356/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com