gpt4 book ai didi

python - 如何使用 ndarray 参数和/或输出定义 numba 类?

转载 作者:太空宇宙 更新时间:2023-11-04 06:10:21 28 4
gpt4 key购买 nike

我试过这个:

import numpy as np
import numba

@numba.jit
class foo(object):
@numba.void(numba.int32)
def __init__(self, somenum):
self.somenumarray = np.arange(somenum)

@numba.jit('f8[:](f8[:])')
def somemethod1(self, a):
return self.somenumarray + a

使用 @numba.double[:](numba.double[:]) 方法装饰器会导致错误。

最佳答案

这可以使用 numba.FunctionType 来完成

import numpy as npimport numbabar = numba.FunctionType(return_type=numba.f8[:], args=[numba.f8[:]])@numba.jitclass foo(object):    @numba.FunctionType(return_type=numba.void, args=[numba.int32])    def __init__(self, somenum):        self.somenumarray = np.arange(somenum)    @bar    def somemethod1(self, a):        return self.somenumarray + a

您可以稍后执行此操作:

quux = foo(3)quux.somemethod1(np.arange(3))

关于python - 如何使用 ndarray 参数和/或输出定义 numba 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19118957/

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