Spec-Zone.ru › NumPy 2.0

numpy.can_cast

numpy.can_cast(from_, to, casting='safe')

Возвращает True, если преобразование между типами данных возможно в соответствии с правилом преобразования.

Параметры:
from_dtype, спецификатор dtype, NumPy скаляр или массив

Тип данных, NumPy скаляр или массив для преобразования.

todtype или спецификатор dtype

Тип данных для преобразования.

casting{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, необязательно

Управляет тем, какие преобразования типов данных могут произойти.

  • ‘no’ означает, что преобразование типов данных вообще не должно происходить.
  • ‘equiv’ означает, что допускаются только изменения порядка байтов.
  • ‘safe’ означает, что допускаются только преобразования, которые могут сохранить значения.
  • ‘same_kind’ означает, что допускаются только безопасные преобразования или преобразования внутри одного рода, например, float64 в float32.
  • ‘unsafe’ означает, что могут быть выполнены любые преобразования данных.
Возвращает:
outbool

True, если преобразование может произойти в соответствии с правилом преобразования.

См. также

dtype, result_type

Примечания

Изменено в версии 1.17.0: Преобразование между простым типом данных и структурированным типом возможно только для преобразований «unsafe». Преобразование к нескольким полям разрешено, но преобразование из нескольких полей не разрешено.

Изменено в версии 1.9.0: Преобразование из числовых в строковые типы в режиме «safe» преобразования требует, чтобы длина строкового dtype была достаточно большой, чтобы хранить максимальное целое или число с плавающей точкой значение, преобразованное.

Изменено в версии 2.0: Эта функция больше не поддерживает Python-скаляры и не применяет никакой логики, основанной на значениях, для 0-мерных массивов и NumPy-скаляров.

Примеры

Основные примеры

>>> np.can_cast(np.int32, np.int64)
True
>>> np.can_cast(np.float64, complex)
True
>>> np.can_cast(complex, float)
False
>>> np.can_cast('i8', 'f8')
True
>>> np.can_cast('i8', 'f4')
False
>>> np.can_cast('i4', 'S4')
False

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.can_cast.html

Spec-Zone.ru

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