numpy.isscalar#
- numpy.isscalar(element)[source]#
如果 element 的類型為純量類型,則返回 True。
- 參數::
- elementany
輸入引數,可以是任何類型和形狀。
- 返回::
- valbool
如果 element 是純量類型,則為 True,否則為 False。
另請參閱
ndim
取得陣列的維度數量
註解
如果您需要更嚴格的方式來識別數值純量,請使用
isinstance(x, numbers.Number)
,因為這對於大多數非數值元素(例如字串)會返回False
。在大多數情況下,應使用
np.ndim(x) == 0
而非此函數,因為這也將對 0 維陣列返回 true。這就是 numpy 如何以dx
引數到gradient
和bins
引數到histogram
的樣式來多載函數的方式。一些主要差異x
isscalar(x)
np.ndim(x) == 0
PEP 3141 數值物件(包括內建模組)
True
True
內建字串和緩衝區物件
True
True
其他內建物件,例如
pathlib.Path
、Exception、re.compile
的結果False
True
第三方物件,例如
matplotlib.figure.Figure
False
True
零維 numpy 陣列
False
True
其他 numpy 陣列
False
False
list、tuple 和其他序列物件
False
False
範例
>>> import numpy as np
>>> np.isscalar(3.1) True
>>> np.isscalar(np.array(3.1)) False
>>> np.isscalar([3.1]) False
>>> np.isscalar(False) True
>>> np.isscalar('numpy') True
NumPy 支援 PEP 3141 數字
>>> from fractions import Fraction >>> np.isscalar(Fraction(5, 17)) True >>> from numbers import Number >>> np.isscalar(Number()) True