numpy.promote_types#
- numpy.promote_types(type1, type2, /)#
返回一个数据类型,该数据类型具有最小的尺寸和最小的标量类型,并且
type1和type2都可以安全地转换为该类型。返回的数据类型始终被视为“规范的”,这主要意味着提升后的 dtype 始终采用原生字节序。此函数是对称的,但很少是结合的。
- 参数:
- type1dtype 或 dtype 说明符
第一个数据类型。
- type2dtype 或 dtype 说明符
第二个数据类型。
- 返回:
- outdtype
提升后的数据类型。
另请参阅
备注
有关提升的更多信息,请参阅
numpy.result_type。从 NumPy 1.9 开始,当一个参数是整数或浮点数 dtype,另一个参数是字符串 dtype 时,promote_types 函数现在返回一个有效的字符串长度。以前,它总是返回输入的字符串 dtype,即使它不足以存储转换为字符串的最大整数/浮点值。
版本 1.23.0 中已更改。
NumPy 现在支持对更多结构化 dtypes 进行提升。它将删除结构化 dtype 中不必要的填充,并单独提升包含的字段。
示例
>>> import numpy as np >>> np.promote_types('f4', 'f8') dtype('float64')
>>> np.promote_types('i8', 'f4') dtype('float64')
>>> np.promote_types('>i8', '<c8') dtype('complex128')
>>> np.promote_types('i4', 'S8') dtype('S11')
非结合性案例的示例
>>> p = np.promote_types >>> p('S', p('i1', 'u1')) dtype('S6') >>> p(p('S', 'i1'), 'u1') dtype('S4')