numpy.isscalar#
- numpy.isscalar(element)[源代码]#
如果 element 的类型是标量类型,则返回 True。
- 参数:
- elementany
输入参数,可以是任何类型和形状。
- 返回:
- valbool
如果 element 是标量类型,则为 True,如果不是,则为 False。
另请参阅
ndim获取数组的维度数
备注
如果您需要更严格的方式来识别*数值*标量,请使用
isinstance(x, numbers.Number),因为它会为大多数非数值元素(如字符串)返回False。在大多数情况下,应该使用
np.ndim(x) == 0而不是此函数,因为它也会为 0 维数组返回 True。NumPy 在重载函数时会以这种方式处理gradient的dx参数和histogram的bins参数。一些关键区别x
isscalar(x)np.ndim(x) == 0PEP 3141 数值对象(包括内置对象)
TrueTrue内置字符串和缓冲区对象
TrueTrue其他内置对象,例如
pathlib.Path、Exception、re.compile的结果FalseTrue第三方对象,如
matplotlib.figure.FigureFalseTrue零维 NumPy 数组
FalseTrue其他 NumPy 数组
FalseFalselist、tuple 和其他序列对象
FalseFalse示例
>>> 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