numpy.dtype.newbyteorder#
method
- dtype.newbyteorder(new_order='S', /)#
返回具有不同字节顺序的新 dtype.
更改也会在数据类型的所有字段和子数组中进行.
- 参数:
- new_orderstring,可选
强制使用的字节顺序;来自以下字节顺序规范的值.默认值 (‘S’) 会导致交换当前字节顺序. new_order 代码可以是以下任何一种:
‘S’ - 将 dtype 从当前endian 交换到相反的 endian
{‘<’, ‘little’} - 小端
{‘>’, ‘big’} - 大端
{‘=’, ‘native’} - 本机顺序
{‘|’, ‘I’} - 忽略(不更改字节顺序)
- 返回:
- new_dtypedtype
具有给定字节顺序更改的新 dtype 对象.
注释
更改也会在数据类型的所有字段和子数组中进行.
示例
>>> import sys >>> sys_is_le = sys.byteorder == 'little' >>> native_code = '<' if sys_is_le else '>' >>> swapped_code = '>' if sys_is_le else '<' >>> import numpy as np >>> 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