【发布时间】:2019-08-29 20:47:42
【问题描述】:
我想在 Numba 中运行递归函数,使用 nopython 模式。直到现在我只得到错误。这是一个非常简单的代码,用户给出一个少于五个元素的元组,然后该函数创建另一个元组,并在元组中添加一个新值(在本例中为数字 3)。重复此操作,直到最终元组的长度为 5。由于某种原因,这不起作用,不知道为什么。
@njit
def tup(a):
if len(a) == 5:
return a
else:
b = a + (3,)
b = tup(b)
return b
例如,如果a = (0,1),我希望最终结果是元组(0,1,3,3,3)。
编辑:我正在使用 Numba 0.41.0,我得到的错误是内核死了,'内核似乎已经死了。它将自动重启。'
【问题讨论】:
-
请不要忘记显示您遇到的错误类型。包含 numba 版本也可能会有所帮助,因为 numba 仍在积极开发中,并且支持的功能集正在快速发展。
标签: python python-3.x recursion tuples numba