本文简要介绍 python 语言中 numpy.result_type
的用法。
用法:
numpy.result_type(*arrays_and_dtypes)
返回将 NumPy 类型提升规则应用于参数所产生的类型。
NumPy 中的类型提升与 C++ 等语言中的规则类似,但略有不同。当同时使用标量和数组时,数组的类型优先并考虑标量的实际值。
例如,计算 3*a,其中 a 是一个 32 位浮点数的数组,直观地应该得到一个 32 位浮点数输出。如果 3 是 32 位整数,NumPy 规则表明它不能无损转换为 32 位浮点数,因此结果类型应为 64 位浮点数。通过检查常量 ‘3’ 的值,我们看到它适合 8 位整数,可以无损地转换为 32 位浮点数。
- arrays_and_dtypes: 数组和数据类型列表
需要其结果类型的某些操作的操作数。
- out: 类型
结果类型。
参数:
返回:
注意:
使用的具体算法如下。
通过首先检查所有数组和标量的最大类型是布尔值、整数 (int/uint) 还是浮点数 (float/complex) 来确定类别。
如果只有标量或标量的最大类别高于数组的最大类别,则将数据类型与
promote_types
组合以产生返回值。否则,在每个数组上调用
min_scalar_type
,并将结果数据类型全部与promote_types
组合以产生返回值。int 值集不是具有相同位数的类型的 uint 值的子集,这在
min_scalar_type
中没有反映,但在result_type
中作为特殊情况处理。例子:
>>> np.result_type(3, np.arange(7, dtype='i1')) dtype('int8')
>>> np.result_type('i4', 'c8') dtype('complex128')
>>> np.result_type(3.0, -2) dtype('float64')
相关用法
- Python numpy reshape用法及代码示例
- Python numpy resize用法及代码示例
- Python numpy recarray.dot用法及代码示例
- Python numpy recarray.itemset用法及代码示例
- Python numpy recarray.view用法及代码示例
- Python numpy recarray.tolist用法及代码示例
- Python numpy recarray.setflags用法及代码示例
- Python numpy recarray.flat用法及代码示例
- Python numpy recarray用法及代码示例
- Python numpy recarray.sort用法及代码示例
- Python numpy records.fromfile用法及代码示例
- Python numpy remainder用法及代码示例
- Python numpy recarray.astype用法及代码示例
- Python numpy recarray.itemsize用法及代码示例
- Python numpy recarray.tostring用法及代码示例
- Python numpy recarray.flatten用法及代码示例
- Python numpy recarray.item用法及代码示例
- Python numpy real_if_close用法及代码示例
- Python numpy recarray.getfield用法及代码示例
- Python numpy recarray.ndim用法及代码示例
- Python numpy records.fromstring用法及代码示例
- Python numpy repeat用法及代码示例
- Python numpy recarray.byteswap用法及代码示例
- Python numpy recarray.size用法及代码示例
- Python numpy recarray.T用法及代码示例
注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.result_type。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。