numpy.find_common_type

numpy.find_common_type(array_types, scalar_types)[源代码]

根据标准强制规则确定公共类型。

参数
array_types序列

表示数组的数据类型或数据类型可转换对象的列表。

scalar_types序列

表示标量的数据类型或数据类型可转换对象的列表。

返回
datatypeD型

公共数据类型,最大值为 array_types 忽略 scalar_types ,除非 scalar_types 是另一种 (dtype.kind )如果不理解这类内容,则不返回任何内容。

实例

>>> np.find_common_type([], [np.int64, np.float32, complex])
dtype('complex128')
>>> np.find_common_type([np.int64, np.float32], [])
dtype('float64')

标准转换规则确保标量不能向上转换数组,除非标量是一种根本不同的数据类型(即在数据类型层次结构中的不同层次结构下),否则数组:

>>> np.find_common_type([np.float32], [np.int64, np.float64])
dtype('float32')

复杂是不同的类型,因此它向上投射 array_types 论点:

>>> np.find_common_type([np.float32], [complex])
dtype('complex128')

类型说明符字符串可转换为DTypes,因此可以使用它而不是DTypes:

>>> np.find_common_type(['f4', 'f4', 'i4'], ['c8'])
dtype('complex128')