python - 如何使用 Numba 创建 dict 类型的类属性?
问题描述
我想在 Numba 类中使用字典,但我不确定要为类型规范添加什么:
@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}
推荐阅读
- mysql - 创建存储过程以使用动态列从另一个 SP 中提取数据
- git - 有没有办法在 git log 漂亮格式中执行 shell 脚本?
- python-3.x - 如何在 Docker 中运行 Python 命令并捕获输出并将其设置为环境变量
- c# - Getter 和 Setter 的简写?
- node.js - Node JS & Sequelize:.findByPk 返回一个函数而不是一个对象
- javascript - 无法设置样式属性值 javascript / typescript
- javascript - 所有“a元素”上的自定义右键菜单
- python-3.x - 使用 python azure 函数获取分配在容器中的文件
- opencv - 如何在 AMD GPU 上使用 DNN OPENCL?
- teamcity - 代理端结帐恢复为 Perforce Stream Depot 的服务器端结帐