如果可以进行数据类型转换,则返回 True,以控制 Python 中可以进行哪种类型的数据转换
pythonnumpyserver side programmingprogramming
如果根据转换规则可以进行数据类型转换,numpy.can_cast() 方法将返回 True。第一个参数是要转换的数据类型或数组。第二个参数是要转换到的数据类型。第三个参数控制可以进行哪种类型的数据转换,其值为 ‘no’、‘equiv’、‘safe’、‘same_kind’ 和 ‘unsafe’,
‘no’ 表示根本不应该转换数据类型。
‘equiv’ 表示只允许更改字节顺序。
‘safe’ 表示只允许可以保留值的转换。
‘same_kind’ 表示只允许安全转换或类型内的转换,如 float64 到 float32。
‘unsafe’ 表示可以进行任何数据转换。
步骤
首先,导入所需的库 −
import numpy as np
如果根据转换规则 − 可以在数据类型之间进行转换,则 numpy.can_cast() 方法返回 True
print("使用 Numpy 中的 can_cast() 方法检查\n")
类型 "no" −
print("结果...",np.can_cast('i8', 'i8', 'no')) print("结果...",np.can_cast('<i8', '>i8', 'no'))
类型 "equiv" −
print("结果...",np.can_cast('<i8', '>i8', 'equiv')) print("结果...",np.can_cast('<i4', '>i8', 'equiv'))
类型"safe" −
print("结果...",np.can_cast('i4', 'i8', 'safe')) print("结果...",np.can_cast('i8', 'i4', 'safe'))
类型"same_kind" −
print("结果...",np.can_cast('i8', 'i4', 'same_kind')) print("结果...",np.can_cast('i8', 'i4', 'same_kind'))
示例
import numpy as np # 如果根据转换规则可以在数据类型之间进行转换,则 numpy.can_cast() 方法返回 True。 print("使用 Numpy 中的 can_cast() 方法进行检查\n") # 类型 "no" print("结果...",np.can_cast('i8', 'i8', 'no')) print("结果...",np.can_cast('<i8', '>i8', 'no')) # 类型 "equiv" print("结果...",np.can_cast('<i8', '>i8', 'equiv')) print("结果...",np.can_cast('<i4', '>i8', 'equiv')) # 类型 "safe" print("结果...",np.can_cast('i4', 'i8', 'safe')) print("结果...",np.can_cast('i8', 'i4', 'safe')) # 类型 "same_kind" print("结果...",np.can_cast('i8', 'i4', 'same_kind')) print("结果...",np.can_cast('i8', 'i4', 'same_kind'))
输出
Checking with can_cast() method in Numpy 结果...True 结果...False 结果...True 结果...False 结果...True 结果...False 结果...True 结果...True