如何在 Numba 中使用 Python Class
How to use Python Class with Numba
我有 Numba 0.24,它支持 classes。
当我尝试构建最简单的 class 时,我可以想象我发现了一个错误!发生什么事了?
from numba import jitclass
@jitclass
class foo:
x = 2
bar = foo()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-2-3e0fd8d4bd2b> in <module>()
3 class foo:
4 x = 2
----> 5 bar = foo()
TypeError: wrap() missing 1 required positional argument: 'cls'
我是不是漏掉了什么?
您需要指定规格:
spec = [('x', nb.int64)]
@nb.jitclass(spec)
class foo(object):
def __init__(self):
self.x = 2
bar = foo()
print bar.x
看看docs。目前不支持 class 变量。你必须使用实例变量。
我有 Numba 0.24,它支持 classes。
当我尝试构建最简单的 class 时,我可以想象我发现了一个错误!发生什么事了?
from numba import jitclass
@jitclass
class foo:
x = 2
bar = foo()
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-2-3e0fd8d4bd2b> in <module>()
3 class foo:
4 x = 2
----> 5 bar = foo()
TypeError: wrap() missing 1 required positional argument: 'cls'
我是不是漏掉了什么?
您需要指定规格:
spec = [('x', nb.int64)]
@nb.jitclass(spec)
class foo(object):
def __init__(self):
self.x = 2
bar = foo()
print bar.x
看看docs。目前不支持 class 变量。你必须使用实例变量。