numpy.dtype.newbyteorder
метод
-
dtype.newbyteorder(new_order='S') -
Возвращает новый тип данных с другим порядком байтов.
Изменения также вносятся во все поля и подмассивы типа данных.
- Параметры
-
-
new_orderstring, optional -
Порядок байтов для принудительного задания; значение из спецификаций порядка байтов ниже. Значение по умолчанию (‘S’) приводит к перестановке текущего порядка байтов.
new_orderкоды могут быть любыми из следующих:- ‘S’ - перестановка типа данных с текущего на противоположный порядок байтов
- {‘<’, ‘L’} - little endian
- {‘>’, ‘B’} - big endian
- {‘=’, ‘N’} - родной порядок
- {‘|’, ‘I’} - игнорировать (без изменения порядка байтов)
Код выполняет регистронезависимую проверку первой буквы
new_orderна эти альтернативы. Например, любой из ‘>’ или ‘B’ или ‘b’ или ‘brian’ подходит для указания big-endian.
-
- Возвращает
-
-
new_dtypedtype -
Новый объект типа данных с заданным изменением порядка байтов.
-
Примечания
Изменения также вносятся во все поля и подмассивы типа данных.
Примеры
>>> 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
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/generated/numpy.dtype.newbyteorder.html