[英]How to distribute Python package with Numba as optional dependency
給定一個 numba 修飾的代碼,
from numba import jit
@jit(nopython=True)
def f():
...
,如何將 Numba 作為可選依賴項作為 package 分發? 例如,我想通過pip install mypackage[jit]
安裝我的 package,其中包含 numba 並刪除額外的標簽以排除 numba。
一個不好的答案是要求用戶安裝 Numba,例如,設置NUMBA_DISABLE_JIT=1
。
創建一個虛擬裝飾器:
try:
from numba import jit
except ImportError:
def jit(*args, **kwargs):
return lambda f: f
@jit(nopython=True)
def f():
...
一個解決方案,雖然不是很漂亮......
USE_NUMBA = True
try:
from numba import jit
except ImportError:
USE_NUMBA = False
def f():
...
if USE_NUMBA:
f = jit(nopython=True)(f)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.