# 2.7。支持的 NumPy 功能
> 原文: [http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html](http://numba.pydata.org/numba-doc/latest/reference/numpysupported.html)
注意
支持絕大多數 NumPy 1.16 行為,但涉及`NaT`的`datetime`和`timedelta`使用與早期版本中存在的行為相匹配。 ufunc 套件尚未擴展以適應 NumPy 1.16 中存在的兩個新的時間計算相關的附加功能。此外,在某些輸入模式中出現`NaN`時,`ediff1d`和`interp`函數在復制輸出方面存在一些小問題。
Numba 的一個目標是與 [NumPy](http://www.numpy.org/) 無縫集成。 NumPy 數組為同類數據集提供了一種有效的存儲方法。 NumPy dtypes 在編譯時提供有用的類型信息,并且內存中潛在大量數據的常規結構化存儲為代碼生成提供了理想的內存布局。 Numba 擅長生成在 NumPy 數組之上執行的代碼。
NumbP 在 Numba 的支持有多種形式:
* Numba 了解對 NumPy [ufuncs](http://docs.scipy.org/doc/numpy/reference/ufuncs.html) 的調用,并能夠為其中許多人生成等效的本機代碼。
* Numba 直接支持 NumPy 陣列。訪問 Numpy 數組非常有效,因為索引會降低到可能時直接訪問內存。
* Numba 能夠產生 [ufuncs](http://docs.scipy.org/doc/numpy/reference/ufuncs.html) 和 [gufuncs](http://docs.scipy.org/doc/numpy/reference/c-api.generalized-ufuncs.html) 。這意味著可以在 Python 中實現 ufuncs 和 gufunc,使用 NumPy C API 獲得與 C 擴展模塊中實現的 ufuncs / gufuncs 相當的速度。
除非另有說明,否則以下部分將重點介紹 [nopython 模式](../glossary.html#term-nopython-mode)中支持的 Numpy 功能。
## 2.7.1。標量類型
Numba 支持以下 Numpy 標量類型:
* **整數**:所有符號的整數,以及最多 64 位的任何寬度
* **布爾**
* **實數:**單精度(32 位)和雙精度(64 位)實數
* **復數:**單精度(2x32 位)和雙精度(2x64 位)復數
* **日期時間和時間戳:任何單位的**
* **字符序列**(但沒有可用的操作)
* **結構化標量:**結構標量由上述任何類型和上述類型的數組組成
不支持以下標量類型和功能:
* **任意 Python 對象**
* **半精度和擴展精度**實數和復數
* **嵌套結構化標量**結構化標量字段可能不包含其他結構化標量
標量 Numpy 數字支持的操作與`int`或`float`等效內置類型相同。您可以使用類型的構造函數從不同的類型或寬度進行轉換。
結構化標量支持屬性獲取和設置,以及使用常量字符串的成員查找。
也可以看看
[Numpy scalars](http://docs.scipy.org/doc/numpy/reference/arrays.scalars.html) 參考。
## 2.7.2。數組類型
[支持上述任何標量類型的 Numpy 數組](http://docs.scipy.org/doc/numpy/reference/arrays.ndarray.html),無論其形狀或布局如何。
### 2.7.2.1。數組訪問
數組支持正常迭代。支持完整的基本索引和切片。還支持高級索引的子集:只允許一個高級索引,它必須是一維數組(它也可以與任意數量的基本索引組合)。
也可以看看
[Numpy 索引](http://docs.scipy.org/doc/numpy/reference/arrays.indexing.html)參考。
### 2.7.2.2。屬性
支持 Numpy 數組的以下屬性:
* [`dtype`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.dtype.html#numpy.ndarray.dtype "(in NumPy v1.16)")
* [`flags`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.flags.html#numpy.ndarray.flags "(in NumPy v1.16)")
* [`flat`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.flat.html#numpy.ndarray.flat "(in NumPy v1.16)")
* [`itemsize`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.itemsize.html#numpy.ndarray.itemsize "(in NumPy v1.16)")
* [`ndim`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.ndim.html#numpy.ndarray.ndim "(in NumPy v1.16)")
* [`shape`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.shape.html#numpy.ndarray.shape "(in NumPy v1.16)")
* [`size`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.size.html#numpy.ndarray.size "(in NumPy v1.16)")
* [`strides`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.strides.html#numpy.ndarray.strides "(in NumPy v1.16)")
* [`T`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.T.html#numpy.ndarray.T "(in NumPy v1.16)")
* [`real`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.real.html#numpy.ndarray.real "(in NumPy v1.16)")
* [`imag`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.imag.html#numpy.ndarray.imag "(in NumPy v1.16)")
#### 2.7.2.2.1。 `flags`對象
[`flags`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.flags.html#numpy.ndarray.flags "(in NumPy v1.16)") 屬性返回的對象支持`contiguous`,`c_contiguous`和`f_contiguous`屬性。
#### 2.7.2.2.2。 `flat`對象
[`flat`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.flat.html#numpy.ndarray.flat "(in NumPy v1.16)") 屬性返回的對象支持迭代和索引,但要小心:非 C 連續數組的索引非常慢。
#### 2.7.2.2.3。 `real`和`imag`屬性
無論 dtype 如何,Numpy 都支持這些屬性,但 Numba 選擇限制其支持以避免潛在的用戶錯誤。對于數字 dtypes,Numba 遵循 Numpy 的行為。 [`real`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.real.html#numpy.ndarray.real "(in NumPy v1.16)") 屬性返回復數數組實部的視圖,它表現為其他數字 dtypes 的標識函數。 [`imag`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.imag.html#numpy.ndarray.imag "(in NumPy v1.16)") 屬性返回復數數組的虛部的視圖,并返回具有相同形狀的零數組和其他數字 dtypes 的 dtype。對于非數字 dtypes,包括所有結構化/記錄 dtypes,使用這些屬性將導致編譯時( <cite>TypingError</cite> )錯誤。此行為與 Numpy 不同,但選擇此行為是為了避免與重疊這些屬性的字段名稱混淆。
### 2.7.2.3。計算
Numpy 數組的以下方法以其基本形式支持(沒有任何可選參數):
* [`all()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.all.html#numpy.ndarray.all "(in NumPy v1.16)")
* [`any()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.any.html#numpy.ndarray.any "(in NumPy v1.16)")
* [`argmax()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.argmax.html#numpy.ndarray.argmax "(in NumPy v1.16)")
* [`argmin()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.argmin.html#numpy.ndarray.argmin "(in NumPy v1.16)")
* [`conj()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.conj.html#numpy.ndarray.conj "(in NumPy v1.16)")
* [`conjugate()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.conjugate.html#numpy.ndarray.conjugate "(in NumPy v1.16)")
* [`cumprod()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.cumprod.html#numpy.ndarray.cumprod "(in NumPy v1.16)")
* [`cumsum()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.cumsum.html#numpy.ndarray.cumsum "(in NumPy v1.16)")
* [`max()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.max.html#numpy.ndarray.max "(in NumPy v1.16)")
* [`mean()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.mean.html#numpy.ndarray.mean "(in NumPy v1.16)")
* [`min()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.min.html#numpy.ndarray.min "(in NumPy v1.16)")
* [`nonzero()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.nonzero.html#numpy.ndarray.nonzero "(in NumPy v1.16)")
* [`prod()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.prod.html#numpy.ndarray.prod "(in NumPy v1.16)")
* [`std()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.std.html#numpy.ndarray.std "(in NumPy v1.16)")
* [`take()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.take.html#numpy.ndarray.take "(in NumPy v1.16)")
* [`var()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.var.html#numpy.ndarray.var "(in NumPy v1.16)")
相應的頂級 Numpy 函數(例如 [`numpy.prod()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.prod.html#numpy.prod "(in NumPy v1.16)") )也同樣受支持。
### 2.7.2.4。其他方法
支持以下 Numpy 數組方法:
* [`argsort()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.argsort.html#numpy.ndarray.argsort "(in NumPy v1.16)") (值`'quicksort'`和`'mergesort'`支持`kind`關鍵字參數)
* [`astype()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.astype.html#numpy.ndarray.astype "(in NumPy v1.16)") (僅 1 參數形式)
* [`copy()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.copy.html#numpy.ndarray.copy "(in NumPy v1.16)") (不帶參數)
* [`dot()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.dot.html#numpy.ndarray.dot "(in NumPy v1.16)") (僅 1 參數形式)
* [`flatten()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.flatten.html#numpy.ndarray.flatten "(in NumPy v1.16)") (無訂單參數;僅'C'訂單)
* [`item()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.item.html#numpy.ndarray.item "(in NumPy v1.16)") (不帶參數)
* [`itemset()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.itemset.html#numpy.ndarray.itemset "(in NumPy v1.16)") (僅 1 參數形式)
* [`ravel()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.ravel.html#numpy.ndarray.ravel "(in NumPy v1.16)") (無訂單參數;僅'C'訂單)
* [`reshape()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.reshape.html#numpy.ndarray.reshape "(in NumPy v1.16)") (僅 1 參數形式)
* [`sort()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.sort.html#numpy.ndarray.sort "(in NumPy v1.16)") (不帶參數)
* [`sum()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.sum.html#numpy.ndarray.sum "(in NumPy v1.16)") (有或沒有`axis`參數)
* 如果`axis`參數是編譯時常量,則支持所有有效值。超出范圍的值將在編譯時產生`LoweringError`。
* 如果`axis`參數不是編譯時常量,則僅支持 0 到 3 之間的值。超出范圍的值將導致運行時異常。
* [`transpose()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.transpose.html#numpy.ndarray.transpose "(in NumPy v1.16)")
* [`view()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.view.html#numpy.ndarray.view "(in NumPy v1.16)") (僅 1 參數形式)
警告
排序可能比 Numpy 的實現略慢。
## 2.7.3。功能
### 2.7.3.1。線性代數
浮點數和復數的 1-D 和 2-D 連續數組支持基本線性代數:
* [`numpy.dot()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.dot.html#numpy.dot "(in NumPy v1.16)")
* [`numpy.kron()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.kron.html#numpy.kron "(in NumPy v1.16)")
* [`numpy.outer()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.outer.html#numpy.outer "(in NumPy v1.16)")
* [`numpy.trace()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.trace.html#numpy.trace "(in NumPy v1.16)") (只有第一個參數)。
* [`numpy.vdot()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.vdot.html#numpy.vdot "(in NumPy v1.16)")
* 在 Python 3.5 及更高版本中,來自 [**PEP 465**](https://www.python.org/dev/peps/pep-0465)的矩陣乘法運算符(即`a @ b`,其中`a`和`b`是 1-D 或 2-D 陣列)。
* [`numpy.linalg.cholesky()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.cholesky.html#numpy.linalg.cholesky "(in NumPy v1.16)")
* [`numpy.linalg.cond()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.cond.html#numpy.linalg.cond "(in NumPy v1.16)") (`p`中只有非字符串值)。
* [`numpy.linalg.det()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.det.html#numpy.linalg.det "(in NumPy v1.16)")
* [`numpy.linalg.eig()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eig.html#numpy.linalg.eig "(in NumPy v1.16)") (僅支持運行不會導致域更改的數據,例如實數輸入 - >實數輸出,復數輸入 - >復數輸出)。
* [`numpy.linalg.eigh()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eigh.html#numpy.linalg.eigh "(in NumPy v1.16)") (只有第一個參數)。
* [`numpy.linalg.eigvals()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eigvals.html#numpy.linalg.eigvals "(in NumPy v1.16)") (僅支持運行不會導致域更改的數據,例如實數輸入 - >實數輸出,復數輸入 - >復數輸出)。
* [`numpy.linalg.eigvalsh()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.eigvalsh.html#numpy.linalg.eigvalsh "(in NumPy v1.16)") (只有第一個參數)。
* [`numpy.linalg.inv()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.inv.html#numpy.linalg.inv "(in NumPy v1.16)")
* [`numpy.linalg.lstsq()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.lstsq.html#numpy.linalg.lstsq "(in NumPy v1.16)")
* [`numpy.linalg.matrix_power()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.matrix_power.html#numpy.linalg.matrix_power "(in NumPy v1.16)")
* [`numpy.linalg.matrix_rank()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.matrix_rank.html#numpy.linalg.matrix_rank "(in NumPy v1.16)")
* [`numpy.linalg.norm()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.norm.html#numpy.linalg.norm "(in NumPy v1.16)") (只有 2 個第一個參數,`ord`中只有非字符串值)。
* [`numpy.linalg.pinv()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.pinv.html#numpy.linalg.pinv "(in NumPy v1.16)")
* [`numpy.linalg.qr()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.qr.html#numpy.linalg.qr "(in NumPy v1.16)") (只有第一個參數)。
* [`numpy.linalg.slogdet()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.slogdet.html#numpy.linalg.slogdet "(in NumPy v1.16)")
* [`numpy.linalg.solve()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.solve.html#numpy.linalg.solve "(in NumPy v1.16)")
* [`numpy.linalg.svd()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.svd.html#numpy.linalg.svd "(in NumPy v1.16)") (只有 2 個第一個參數)。
注意
這些功能的實現需要安裝 Scipy 0.16+。
### 2.7.3.2。減少
支持以下縮減功能:
* [`numpy.diff()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.diff.html#numpy.diff "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.median()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.median.html#numpy.median "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nancumprod()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nancumprod.html#numpy.nancumprod "(in NumPy v1.16)") (只有第一個參數,需要 NumPy&gt; = 1.12))
* [`numpy.nancumsum()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nancumsum.html#numpy.nancumsum "(in NumPy v1.16)") (只有第一個參數,需要 NumPy&gt; = 1.12))
* [`numpy.nanmax()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanmax.html#numpy.nanmax "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanmean()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanmean.html#numpy.nanmean "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanmedian()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanmedian.html#numpy.nanmedian "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanmin()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanmin.html#numpy.nanmin "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanpercentile()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanpercentile.html#numpy.nanpercentile "(in NumPy v1.16)") (只有 2 個第一個參數,需要 NumPy&gt; = 1.11)
* [`numpy.nanprod()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanprod.html#numpy.nanprod "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanstd()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanstd.html#numpy.nanstd "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nansum()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nansum.html#numpy.nansum "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.nanvar()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nanvar.html#numpy.nanvar "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.percentile()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.percentile.html#numpy.percentile "(in NumPy v1.16)") (只有 2 個第一個參數,需要 NumPy&gt; = 1.10)
### 2.7.3.3。其他功能
支持以下頂級功能:
* [`numpy.arange()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.arange.html#numpy.arange "(in NumPy v1.16)")
* [`numpy.argsort()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.argsort.html#numpy.argsort "(in NumPy v1.16)") (值`'quicksort'`和`'mergesort'`支持`kind`關鍵字參數)
* [`numpy.array()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html#numpy.array "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.asarray()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.asarray.html#numpy.asarray "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.asfortranarray()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.asfortranarray.html#numpy.asfortranarray "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.atleast_1d()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.atleast_1d.html#numpy.atleast_1d "(in NumPy v1.16)")
* [`numpy.atleast_2d()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.atleast_2d.html#numpy.atleast_2d "(in NumPy v1.16)")
* [`numpy.atleast_3d()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.atleast_3d.html#numpy.atleast_3d "(in NumPy v1.16)")
* [`numpy.bincount()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.bincount.html#numpy.bincount "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.column_stack()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.column_stack.html#numpy.column_stack "(in NumPy v1.16)")
* [`numpy.concatenate()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.concatenate.html#numpy.concatenate "(in NumPy v1.16)")
* [`numpy.convolve()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.convolve.html#numpy.convolve "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.copy()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.copy.html#numpy.copy "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.corrcoef()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.corrcoef.html#numpy.corrcoef "(in NumPy v1.16)") (只有 3 個第一個參數,需要 NumPy&gt; = 1.10 和 SciPy&gt; = 0.16;每個 NumPy 1.11+的極值處理)
* [`numpy.correlate()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.correlate.html#numpy.correlate "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.cov()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.cov.html#numpy.cov "(in NumPy v1.16)") (只有 5 個第一個參數,需要 NumPy&gt; = 1.10,SciPy&gt; = 0.16)
* [`numpy.diag()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.diag.html#numpy.diag "(in NumPy v1.16)")
* [`numpy.digitize()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.digitize.html#numpy.digitize "(in NumPy v1.16)")
* [`numpy.dstack()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.dstack.html#numpy.dstack "(in NumPy v1.16)")
* `numpy.dtype()`(只有第一個參數)
* [`numpy.ediff1d()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ediff1d.html#numpy.ediff1d "(in NumPy v1.16)")
* [`numpy.empty()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.empty.html#numpy.empty "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.empty_like()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.empty_like.html#numpy.empty_like "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.expand_dims()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.expand_dims.html#numpy.expand_dims "(in NumPy v1.16)")
* [`numpy.extract()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.extract.html#numpy.extract "(in NumPy v1.16)")
* [`numpy.eye()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.eye.html#numpy.eye "(in NumPy v1.16)")
* [`numpy.fill_diagonal()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.fill_diagonal.html#numpy.fill_diagonal "(in NumPy v1.16)")
* `numpy.flatten()`(無訂單參數;僅'C'訂單)
* [`numpy.frombuffer()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.frombuffer.html#numpy.frombuffer "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.full()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.full.html#numpy.full "(in NumPy v1.16)") (只有 3 個第一個參數)
* [`numpy.full_like()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.full_like.html#numpy.full_like "(in NumPy v1.16)") (只有 3 個第一個參數)
* [`numpy.histogram()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html#numpy.histogram "(in NumPy v1.16)") (只有 3 個第一個參數)
* [`numpy.hstack()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.hstack.html#numpy.hstack "(in NumPy v1.16)")
* [`numpy.identity()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.identity.html#numpy.identity "(in NumPy v1.16)")
* [`numpy.interp()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.interp.html#numpy.interp "(in NumPy v1.16)") (只有 3 個第一個參數;需要 NumPy&gt; = 1.10;每個 NumPy 1.12+的復雜 dtype 處理; `xp`必須單調遞增)
* [`numpy.linspace()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.linspace.html#numpy.linspace "(in NumPy v1.16)") (只有 3 參數形式)
* [`numpy.ndenumerate`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndenumerate.html#numpy.ndenumerate "(in NumPy v1.16)")
* [`numpy.ndindex`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ndindex.html#numpy.ndindex "(in NumPy v1.16)")
* [`numpy.nditer`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.nditer.html#numpy.nditer "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.ones()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ones.html#numpy.ones "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.ones_like()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ones_like.html#numpy.ones_like "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.partition()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.partition.html#numpy.partition "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.ptp()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ptp.html#numpy.ptp "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.ravel()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.ravel.html#numpy.ravel "(in NumPy v1.16)") (無訂單參數;僅'C'訂單)
* [`numpy.reshape()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.reshape.html#numpy.reshape "(in NumPy v1.16)") (無訂單參數;僅'C'訂單)
* [`numpy.roll()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.roll.html#numpy.roll "(in NumPy v1.16)") (只有 2 個第一個參數;第二個參數`shift`必須是整數)
* [`numpy.roots()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.roots.html#numpy.roots "(in NumPy v1.16)")
* [`numpy.round_()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.round_.html#numpy.round_ "(in NumPy v1.16)")
* [`numpy.searchsorted()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.searchsorted.html#numpy.searchsorted "(in NumPy v1.16)") (只有 3 個第一個參數)
* [`numpy.sinc()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.sinc.html#numpy.sinc "(in NumPy v1.16)")
* [`numpy.sort()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.sort.html#numpy.sort "(in NumPy v1.16)") (無可選參數)
* [`numpy.stack()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.stack.html#numpy.stack "(in NumPy v1.16)")
* [`numpy.take()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.take.html#numpy.take "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.transpose()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.transpose.html#numpy.transpose "(in NumPy v1.16)")
* [`numpy.trapz()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.trapz.html#numpy.trapz "(in NumPy v1.16)") (只有 3 個第一個參數)
* [`numpy.tri()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.tri.html#numpy.tri "(in NumPy v1.16)") (只有 3 個第一個參數;第三個參數`k`必須是整數)
* [`numpy.tril()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.tril.html#numpy.tril "(in NumPy v1.16)") (第二個參數`k`必須是整數)
* [`numpy.triu()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.triu.html#numpy.triu "(in NumPy v1.16)") (第二個參數`k`必須是整數)
* [`numpy.unique()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.unique.html#numpy.unique "(in NumPy v1.16)") (只有第一個參數)
* [`numpy.vander()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.vander.html#numpy.vander "(in NumPy v1.16)")
* [`numpy.vstack()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.vstack.html#numpy.vstack "(in NumPy v1.16)")
* [`numpy.where()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.where.html#numpy.where "(in NumPy v1.16)")
* [`numpy.zeros()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.zeros.html#numpy.zeros "(in NumPy v1.16)") (只有 2 個第一個參數)
* [`numpy.zeros_like()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.zeros_like.html#numpy.zeros_like "(in NumPy v1.16)") (只有 2 個第一個參數)
支持以下構造函數,包括數字輸入(用于構造標量)或序列(用于構造數組):
* `numpy.bool_`
* `numpy.complex64`
* `numpy.complex128`
* `numpy.float32`
* `numpy.float64`
* `numpy.int8`
* `numpy.int16`
* `numpy.int32`
* `numpy.int64`
* `numpy.intc`
* `numpy.intp`
* `numpy.uint8`
* `numpy.uint16`
* `numpy.uint32`
* `numpy.uint64`
* `numpy.uintc`
* `numpy.uintp`
支持以下機器參數類,所有純數字屬性:
* [`numpy.iinfo`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.iinfo.html#numpy.iinfo "(in NumPy v1.16)")
* [`numpy.finfo`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.finfo.html#numpy.finfo "(in NumPy v1.16)") (不支持`machar`屬性)
* [`numpy.MachAr`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.MachAr.html#numpy.MachAr "(in NumPy v1.16)") (沒有構造函數的參數)
### 2.7.3.4。文字陣列
Python 和 Numba 都沒有實際的數組文字,但你可以通過在嵌套元組上調用 [`numpy.array()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html#numpy.array "(in NumPy v1.16)") 來構造任意數組:
```py
a = numpy.array(((a, b, c), (d, e, f)))
```
(Numba 尚不支持嵌套列表)
## 2.7.4。模塊
### 2.7.4.1。 `random`
Numba 支持 [numpy.random](http://docs.scipy.org/doc/numpy/reference/routines.random.html) 模塊中的頂級函數,但不允許您創建單獨的 RandomState 實例。使用與[標準隨機模塊](pysupported.html#pysupported-random)相同的算法(因此適用相同的注釋),但具有獨立的內部狀態:來自一個發電機的播種或抽取數字不會影響另一個。
支持以下功能。
#### 2.7.4.1.1。初始化
* [`numpy.random.seed()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.seed.html#numpy.random.seed "(in NumPy v1.16)") :僅帶整數參數
#### 2.7.4.1.2。簡單隨機數據
* [`numpy.random.rand()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rand.html#numpy.random.rand "(in NumPy v1.16)")
* [`numpy.random.randint()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.randint.html#numpy.random.randint "(in NumPy v1.16)") (只有前兩個參數)
* [`numpy.random.randn()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.randn.html#numpy.random.randn "(in NumPy v1.16)")
* [`numpy.random.random()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.random.html#numpy.random.random "(in NumPy v1.16)")
* [`numpy.random.random_sample()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.random_sample.html#numpy.random.random_sample "(in NumPy v1.16)")
* [`numpy.random.ranf()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.ranf.html#numpy.random.ranf "(in NumPy v1.16)")
* [`numpy.random.sample()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.sample.html#numpy.random.sample "(in NumPy v1.16)")
#### 2.7.4.1.3。排列
* [`numpy.random.choice()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.choice.html#numpy.random.choice "(in NumPy v1.16)") :不支持可選的 _p_ 參數(概率數組)
* [`numpy.random.permutation()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.permutation.html#numpy.random.permutation "(in NumPy v1.16)")
* [`numpy.random.shuffle()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.shuffle.html#numpy.random.shuffle "(in NumPy v1.16)") :序列參數必須是一維 Numpy 數組或緩沖區提供對象(例如 [`bytearray`](https://docs.python.org/3/library/stdtypes.html#bytearray "(in Python v3.7)") 或 [`array.array`](https://docs.python.org/3/library/array.html#array.array "(in Python v3.7)") )
#### 2.7.4.1.4。分布
警告
以下函數不支持 <cite>size</cite> 參數。
* [`numpy.random.beta()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.beta.html#numpy.random.beta "(in NumPy v1.16)")
* [`numpy.random.binomial()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.binomial.html#numpy.random.binomial "(in NumPy v1.16)")
* [`numpy.random.chisquare()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.chisquare.html#numpy.random.chisquare "(in NumPy v1.16)")
* [`numpy.random.exponential()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.exponential.html#numpy.random.exponential "(in NumPy v1.16)")
* [`numpy.random.f()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.f.html#numpy.random.f "(in NumPy v1.16)")
* [`numpy.random.gamma()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.gamma.html#numpy.random.gamma "(in NumPy v1.16)")
* [`numpy.random.geometric()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.geometric.html#numpy.random.geometric "(in NumPy v1.16)")
* [`numpy.random.gumbel()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.gumbel.html#numpy.random.gumbel "(in NumPy v1.16)")
* [`numpy.random.hypergeometric()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.hypergeometric.html#numpy.random.hypergeometric "(in NumPy v1.16)")
* [`numpy.random.laplace()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.laplace.html#numpy.random.laplace "(in NumPy v1.16)")
* [`numpy.random.logistic()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.logistic.html#numpy.random.logistic "(in NumPy v1.16)")
* [`numpy.random.lognormal()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.lognormal.html#numpy.random.lognormal "(in NumPy v1.16)")
* [`numpy.random.logseries()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.logseries.html#numpy.random.logseries "(in NumPy v1.16)")
* [`numpy.random.multinomial()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.multinomial.html#numpy.random.multinomial "(in NumPy v1.16)")
* [`numpy.random.negative_binomial()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.negative_binomial.html#numpy.random.negative_binomial "(in NumPy v1.16)")
* [`numpy.random.normal()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.normal.html#numpy.random.normal "(in NumPy v1.16)")
* [`numpy.random.pareto()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.pareto.html#numpy.random.pareto "(in NumPy v1.16)")
* [`numpy.random.poisson()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.poisson.html#numpy.random.poisson "(in NumPy v1.16)")
* [`numpy.random.power()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.power.html#numpy.random.power "(in NumPy v1.16)")
* [`numpy.random.rayleigh()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.rayleigh.html#numpy.random.rayleigh "(in NumPy v1.16)")
* [`numpy.random.standard_cauchy()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.standard_cauchy.html#numpy.random.standard_cauchy "(in NumPy v1.16)")
* [`numpy.random.standard_exponential()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.standard_exponential.html#numpy.random.standard_exponential "(in NumPy v1.16)")
* [`numpy.random.standard_gamma()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.standard_gamma.html#numpy.random.standard_gamma "(in NumPy v1.16)")
* [`numpy.random.standard_normal()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.standard_normal.html#numpy.random.standard_normal "(in NumPy v1.16)")
* [`numpy.random.standard_t()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.standard_t.html#numpy.random.standard_t "(in NumPy v1.16)")
* [`numpy.random.triangular()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.triangular.html#numpy.random.triangular "(in NumPy v1.16)")
* [`numpy.random.uniform()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.uniform.html#numpy.random.uniform "(in NumPy v1.16)")
* [`numpy.random.vonmises()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.vonmises.html#numpy.random.vonmises "(in NumPy v1.16)")
* [`numpy.random.wald()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.wald.html#numpy.random.wald "(in NumPy v1.16)")
* [`numpy.random.weibull()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.weibull.html#numpy.random.weibull "(in NumPy v1.16)")
* [`numpy.random.zipf()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.zipf.html#numpy.random.zipf "(in NumPy v1.16)")
注意
從非 Numba 代碼(或從[對象模式](../glossary.html#term-object-mode)代碼)調用 [`numpy.random.seed()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.seed.html#numpy.random.seed "(in NumPy v1.16)") 將為 Numpy 隨機生成器播種,而不是 Numba 隨機生成器。
注意
從版本 0.28.0 開始,發生器是線程安全的和叉安全的。每個線程和每個進程將產生獨立的隨機數流。
### 2.7.4.2。 `stride_tricks`
支持`numpy.lib.stride_tricks`模塊的以下功能:
* [`as_strided()`](https://docs.scipy.org/doc/numpy/reference/generated/numpy.lib.stride_tricks.as_strided.html#numpy.lib.stride_tricks.as_strided "(in NumPy v1.16)") (_ 步長 _ 參數是必需的,不支持 _subok_ 參數)
## 2.7.5。標準 ufuncs
Numba 的一個目標是讓 Numba 理解 NumPy 中的所有[標準 ufuncs。當編譯函數時找到支持的 ufunc 時,Numba 將 ufunc 映射到等效的本機代碼。這允許在 Numba 代碼中使用那些在](http://docs.scipy.org/doc/numpy/reference/ufuncs.html#available-ufuncs) [nopython 模式](../glossary.html#term-nopython-mode)中編譯的 ufunc。
### 2.7.5.1。限制
現在,只有一些標準的 ufunc 工作在 [nopython 模式](../glossary.html#term-nopython-mode)。以下是 Numba 知道的不同標準 ufunc 的列表,其排序方式與 NumPy 文檔中的排序方式相同。
### 2.7.5.2。數學運算
| UFUNC | 模式 |
| --- | --- |
| 名稱 | 對象模式 | nopython 模式 |
| --- | --- | --- |
| 加 | 是 | 是 |
| 減去 | 是 | 是 |
| 乘 | 是 | 是 |
| 劃分 | 是 | 是 |
| logaddexp | 是 | 是 |
| logaddexp2 | 是 | 是 |
| true_divide | 是 | 是 |
| floor_divide | 是 | 是 |
| 負 | 是 | 是 |
| 功率 | 是 | 是 |
| 剩余 | 是 | 是 |
| MOD | 是 | 是 |
| FMOD | 是 | 是 |
| ABS | 是 | 是 |
| 絕對 | 是 | 是 |
| 晶圓廠 | 是 | 是 |
| RINT | 是 | 是 |
| 標志 | 是 | 是 |
| 連詞 | 是 | 是 |
| EXP | 是 | 是 |
| EXP2 | 是 | 是 |
| 日志 | 是 | 是 |
| LOG2 | 是 | 是 |
| LOG10 | 是 | 是 |
| 的 expm1 | 是 | 是 |
| log1p | 是 | 是 |
| 開方 | 是 | 是 |
| 廣場 | 是 | 是 |
| 倒數 | 是 | 是 |
| 共軛 | 是 | 是 |
### 2.7.5.3。三角函數
| UFUNC | 模式 |
| --- | --- |
| 名稱 | 對象模式 | nopython 模式 |
| --- | --- | --- |
| 罪 | 是 | 是 |
| COS | 是 | 是 |
| 黃褐色 | 是 | 是 |
| 反正弦 | 是 | 是 |
| ARCCOS | 是 | 是 |
| 反正切 | 是 | 是 |
| arctan2 | 是 | 是 |
| hypot 將 | 是 | 是 |
| 雙曲正弦 | 是 | 是 |
| 護身用手杖 | 是 | 是 |
| 正切 | 是 | 是 |
| arcsinh | 是 | 是 |
| arccosh | 是 | 是 |
| arctanh | 是 | 是 |
| deg2rad | 是 | 是 |
| rad2deg | 是 | 是 |
| 度 | 是 | 是 |
| 弧度 | 是 | 是 |
### 2.7.5.4。比特功能
| UFUNC | 模式 |
| --- | --- |
| 名稱 | 對象模式 | nopython 模式 |
| --- | --- | --- |
| bitwise_and | 是 | 是 |
| bitwise_or | 是 | 是 |
| bitwise_xor | 是 | 是 |
| bitwise_not | 是 | 是 |
| 倒置 | 是 | 是 |
| 左移 | 是 | 是 |
| right_shift | 是 | 是 |
### 2.7.5.5。比較功能
| UFUNC | 模式 |
| --- | --- |
| 名稱 | 對象模式 | nopython 模式 |
| --- | --- | --- |
| 更大 | 是 | 是 |
| greater_equal | 是 | 是 |
| 減 | 是 | 是 |
| less_equal | 是 | 是 |
| NOT_EQUAL | 是 | 是 |
| 等于 | 是 | 是 |
| logical_and | 是 | 是 |
| 邏輯或 | 是 | 是 |
| logical_xor | 是 | 是 |
| logical_not | 是 | 是 |
| 最大值 | 是 | 是 |
| 最低限度 | 是 | 是 |
| FMAX | 是 | 是 |
| FMIN | 是 | 是 |
### 2.7.5.6。浮動功能
| UFUNC | 模式 |
| --- | --- |
| 名稱 | 對象模式 | nopython 模式 |
| --- | --- | --- |
| ISFINITE | 是 | 是 |
| isinf | 是 | 是 |
| isnan | 是 | 是 |
| signbit | 是 | 是 |
| 復制符號 | 是 | 是 |
| 函數 nextafter | 是 | 是 |
| MODF | 是 | 沒有 |
| ldexp | 是的(*) | 是 |
| frexp | 是 | 沒有 |
| 地板 | 是 | 是 |
| 小區 | 是 | 是 |
| TRUNC | 是 | 是 |
| 間距 | 是 | 是 |
(*)Windows 32 位不支持
- 1. 用戶手冊
- 1.1。 Numba 的約 5 分鐘指南
- 1.2。概述
- 1.3。安裝
- 1.4。使用@jit 編譯 Python 代碼
- 1.5。使用@generated_jit 進行靈活的專業化
- 1.6。創建 Numpy 通用函數
- 1.7。用@jitclass 編譯 python 類
- 1.8。使用@cfunc 創建 C 回調
- 1.9。提前編譯代碼
- 1.10。使用@jit 自動并行化
- 1.11。使用@stencil裝飾器
- 1.12。從 JIT 代碼 中回調到 Python 解釋器
- 1.13。性能提示
- 1.14。線程層
- 1.15。故障排除和提示
- 1.16。常見問題
- 1.17。示例
- 1.18。會談和教程
- 2. 參考手冊
- 2.1。類型和簽名
- 2.2。即時編譯
- 2.3。提前編譯
- 2.4。公用事業
- 2.5。環境變量
- 2.6。支持的 Python 功能
- 2.7。支持的 NumPy 功能
- 2.8。與 Python 語義的偏差
- 2.9。浮點陷阱
- 2.10。 Python 2.7 壽命終止計劃
- 3. 用于 CUDA GPU 的 Numba
- 3.1。概述
- 3.2。編寫 CUDA 內核
- 3.3。內存管理
- 3.4。編寫設備功能
- 3.5。 CUDA Python 中支持的 Python 功能
- 3.6。支持的原子操作
- 3.7。隨機數生成
- 3.8。設備管理
- 3.10。示例
- 3.11。使用 CUDA 模擬器 調試 CUDA Python
- 3.12。 GPU 減少
- 3.13。 CUDA Ufuncs 和廣義 Ufuncs
- 3.14。共享 CUDA 內存
- 3.15。 CUDA 陣列接口
- 3.16。 CUDA 常見問題
- 4. CUDA Python 參考
- 4.1。 CUDA 主機 API
- 4.2。 CUDA 內核 API
- 4.3。內存管理
- 5. 用于 AMD ROC GPU 的 Numba
- 5.1。概述
- 5.2。編寫 HSA 內核
- 5.3。內存管理
- 5.4。編寫設備功能
- 5.5。支持的原子操作
- 5.6。代理商
- 5.7。 ROC Ufuncs 和廣義 Ufuncs
- 5.8。示例
- 6. 擴展 Numba
- 6.1。高級擴展 API
- 6.2。低級擴展 API
- 6.3。示例:間隔類型
- 7. 開發者手冊
- 7.1。貢獻給 Numba
- 7.2。 Numba 建筑
- 7.3。多態調度
- 7.4。關于發電機的注意事項
- 7.5。關于 Numba Runtime 的注意事項
- 7.6。使用 Numba Rewrite Pass 獲得樂趣和優化
- 7.7。實時變量分析
- 7.8。上市
- 7.9。模板注釋
- 7.10。關于自定義管道的注意事項
- 7.11。環境對象
- 7.12。哈希 的注意事項
- 7.13。 Numba 項目路線圖
- 8. Numba 增強建議
- 9. 術語表