numpy.dtype.newbyteorder #

方法

数据类型。newbyteorder ( new_order = 'S' , / ) #

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

数据类型的所有字段和子数组也会发生更改。

参数
new_order字符串,可选

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

  • 'S' - 将数据类型从当前字节序交换为相反字节序

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

  • {'>', 'big'} - 大端

  • {'=', 'native'} - 本机顺序

  • {'|', 'I'} - 忽略(不改变字节顺序)

返回
new_dtype数据类型

对字节顺序进行了给定更改的新 dtype 对象。

笔记

数据类型的所有字段和子数组也会发生更改。

例子

>>> import sys
>>> sys_is_le = sys.byteorder == 'little'
>>> native_code = '<' if sys_is_le else '>'
>>> swapped_code = '>' if sys_is_le else '<'
>>> 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