numpy.isscalar#

numpy.isscalar(элемент)[источник]#

Возвращает True, если тип элемент является скалярным типом.

Параметры:
элементлюбой

Входной аргумент, может быть любого типа и формы.

Возвращает:
valbool

True, если элемент является скалярным типом, False, если это не так.

Смотрите также

ndim

Получить количество измерений массива

Примечания

Если вам нужен более строгий способ идентификации числовой скаляр, используйте isinstance(x, numbers.Number), так как это возвращает False для большинства нечисловых элементов, таких как строки.

В большинстве случаев np.ndim(x) == 0 следует использовать вместо этой функции, так как она также вернет true для 0d массивов. Так numpy перегружает функции в стиле dx аргументы для gradient и bins аргумент для histogram. Некоторые ключевые различия:

x

isscalar(x)

np.ndim(x) == 0

Объекты PEP 3141 numeric (включая встроенные)

True

True

встроенных объектов строк и буферов

True

True

другие встроенные объекты, такие как pathlib.Path, Исключение, результат re.compile

False

True

сторонние объекты, такие как matplotlib.figure.Figure

False

True

нульмерные массивы numpy

False

True

другие массивы numpy

False

False

list, кортеж, и другие объекты последовательностей

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