如何使用 Numba 创建 dict-type class 属性?
How to create a dict-type class attribute with Numba?
我想在 Numba 中使用字典 class,但我不确定要为类型规范添加什么:
@numba.jitclass([("cnts", ???)])
class Counter:
def __init__(self):
self.cnts = numba.typed.Dict.empty(
key_type=numba.float64, value_type=numba.int64
)
有什么想法吗?
这对我适用于 Numba 0.45.1:
import numba
@numba.jitclass([("cnts", numba.types.DictType(numba.float64, numba.int64))])
class Counter:
def __init__(self):
self.cnts = numba.typed.Dict.empty(
key_type=numba.float64, value_type=numba.int64
)
def add(self, x):
if x not in self.cnts:
self.cnts[x] = 0
self.cnts[x] += 1
c = Counter()
c.add(1.1)
c.add(1.1)
c.add(0.5)
print(c.cnts) # {1.1: 2, 0.5: 1}
我想在 Numba 中使用字典 class,但我不确定要为类型规范添加什么:
@numba.jitclass([("cnts", ???)])
class Counter:
def __init__(self):
self.cnts = numba.typed.Dict.empty(
key_type=numba.float64, value_type=numba.int64
)
有什么想法吗?
这对我适用于 Numba 0.45.1:
import numba
@numba.jitclass([("cnts", numba.types.DictType(numba.float64, numba.int64))])
class Counter:
def __init__(self):
self.cnts = numba.typed.Dict.empty(
key_type=numba.float64, value_type=numba.int64
)
def add(self, x):
if x not in self.cnts:
self.cnts[x] = 0
self.cnts[x] += 1
c = Counter()
c.add(1.1)
c.add(1.1)
c.add(0.5)
print(c.cnts) # {1.1: 2, 0.5: 1}