Spec-Zone.ru › NumPy 1.21

numpy.find_common_type

numpy.find_common_type(array_types, scalar_types)[source]

Определение общего типа в соответствии со стандартными правилами преобразования.

Параметры
array_typesпоследовательность

Список типов данных или объектов, преобразуемых в типы данных, представляющих массивы.

scalar_typesпоследовательность

Список типов данных или объектов, преобразуемых в типы данных, представляющих скаляры.

Возвращаемое значение
datatypedtype

Общий тип данных, являющийся максимальным из array_types с игнорированием scalar_types, если максимум scalar_types отличается по типу (dtype.kind). Если тип не распознаётся, возвращается None.

См. также

dtype, common_type, can_cast, mintypecode

Примеры

>>> np.find_common_type([], [np.int64, np.float32, complex])
dtype('complex128')
>>> np.find_common_type([np.int64, np.float32], [])
dtype('float64')

Стандартные правила приведения типов гарантируют, что скаляр не может повысить тип массива, если скаляр не имеет принципиально другого типа данных (т. е. находится в другой иерархии в иерархии типов данных) по сравнению с массивом:

>>> np.find_common_type([np.float32], [np.int64, np.float64])
dtype('float32')

Комплексное число имеет другой тип, поэтому оно повышает тип float в array_types аргументе:

>>> np.find_common_type([np.float32], [complex])
dtype('complex128')

Строки-спецификаторы типов преобразуются в типы данных и поэтому могут использоваться вместо типов данных:

>>> np.find_common_type(['f4', 'f4', 'i4'], ['c8'])
dtype('complex128')

© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.find_common_type.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API