numpy.isscalar #

麻木的。isscalar (元素) [来源] #

如果元素的类型是标量类型,则返回 True。

参数
任意元素

输入参数可以是任何类型和形状。

返回
布尔

如果element是标量类型,则为 True,否则为 False。

也可以看看

ndim

获取数组的维数

笔记

如果您需要更严格的方法来识别数字标量,请使用 , 因为它会返回大多数非数字元素(例如字符串)。isinstance(x, numbers.Number)False

在大多数情况下,应该使用此函数来代替此函数,因为它对于 0d 数组也会返回 true。这就是 numpy 以参数 to和 参数 to 的方式重载函数的方式。一些主要区别:np.ndim(x) == 0dxgradientbinshistogram

X

isscalar(x)

np.ndim(x) == 0

PEP 3141 数字对象(包括内置对象)

True

True

内置字符串和缓冲区对象

True

True

其他内置对象,例如 pathlib.PathException、结果re.compile

False

True

第三方对象,例如 matplotlib.figure.Figure

False

True

零维 numpy 数组

False

True

其他 numpy 数组

False

False

listtuple和其他序列对象

False

False

例子

>>> 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