numpy.dtype.newbyteorder

方法

dtype.newbyteorder(new_order='S', /)

返回具有不同字节顺序的新数据类型。

对数据类型的所有字段和子数组也进行了更改。

参数
new_order字符串,可选

强制的字节顺序;以下字节顺序规范中的值。默认值(“s”)导致交换当前字节顺序。 new_order 代码可以是以下任意一种:

  • 'S'-将数据类型从当前端切换到另一端

  • {'<','little'}-小endian

  • {},大端

  • '='-本机顺序

  • '','I'-忽略(不更改字节顺序)

返回
new_dtypeD型

具有给定字节顺序更改的新dtype对象。

笔记

对数据类型的所有字段和子数组也进行了更改。

实例

>>> import sys
>>> sys_is_le = sys.byteorder == 'little'
>>> native_code = sys_is_le and '<' or '>'
>>> swapped_code = sys_is_le and '>' or '<'
>>> native_dt = np.dtype(native_code+'i2')
>>> swapped_dt = np.dtype(swapped_code+'i2')
>>> native_dt.newbyteorder('S') == swapped_dt
True
>>> native_dt.newbyteorder() == swapped_dt
True
>>> native_dt == swapped_dt.newbyteorder('S')
True
>>> native_dt == swapped_dt.newbyteorder('=')
True
>>> native_dt == swapped_dt.newbyteorder('N')
True
>>> native_dt == native_dt.newbyteorder('|')
True
>>> np.dtype('<i2') == native_dt.newbyteorder('<')
True
>>> np.dtype('<i2') == native_dt.newbyteorder('L')
True
>>> np.dtype('>i2') == native_dt.newbyteorder('>')
True
>>> np.dtype('>i2') == native_dt.newbyteorder('B')
True