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’}, optional
控制可以发生哪种类型的数据转换。
‘no’ 表示数据类型不得进行任何转换。
‘equiv’ 表示只允许进行字节顺序更改。
‘safe’ 表示只允许进行可以保留值的转换。
‘same_kind’ 表示只允许安全的转换或同一类别的转换,例如从 float64 到 float32。
‘unsafe’ 表示可以进行任何数据转换。
- 返回:
- outbool
如果根据转换规则可以发生转换,则返回 True。
另请参阅
备注
版本 2.0 中已更改: 此函数不再支持 Python 标量,并且不再对 0-D 数组和 NumPy 标量应用任何基于值的逻辑。
示例
基本示例
>>> import numpy as np >>> 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