Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Numba:返回到对象模式时将错误抑制到_Python_Numba - Fatal编程技术网

Python Numba:返回到对象模式时将错误抑制到

Python Numba:返回到对象模式时将错误抑制到,python,numba,Python,Numba,我想编写一个函数,它可以作为jitted函数运行,也可以作为普通python或对象模式numba运行,这取决于numba是否能够进行类型推断。实际上,我更喜欢普通的python,但除了编写自己的装饰器之外,似乎没有其他方法可以做到这一点 我为什么要这样做?因为我有一个函数f,它接受另一个函数g作为参数。因此,如果g是一个jitted,那么我希望f是jitted,这样整个程序可以快速运行,但是如果g是普通python,那么我希望f仍然运行,尽管运行速度较慢 它只需使用@jit注释f即可正常工作,除

我想编写一个函数,它可以作为jitted函数运行,也可以作为普通python或对象模式numba运行,这取决于
numba
是否能够进行类型推断。实际上,我更喜欢普通的python,但除了编写自己的装饰器之外,似乎没有其他方法可以做到这一点

我为什么要这样做?因为我有一个函数
f
,它接受另一个函数
g
作为参数。因此,如果
g
是一个jitted,那么我希望
f
是jitted,这样整个程序可以快速运行,但是如果
g
是普通python,那么我希望
f
仍然运行,尽管运行速度较慢

它只需使用
@jit
注释
f
即可正常工作,除了第一次在对象模式下运行函数外,我会收到一条关于类型推断失败的编译警告。我想不提这个警告

表示使用
@autojit(warn=False)
,但不再有任何
autojit
。它还说
@jit(warn=False)
可以工作,但这也不行,我得到:

KeyError: "<class 'numba.core.cpu.CPUTargetOptions'> does not support option: 'warn'"
KeyError:“不支持选项:‘警告’”
一定有办法做到这一点而不被警告,但我似乎无法谷歌它。谢谢你的帮助