Я пытаюсь подтвердить, что эта структура отформатирована правильно для сетевого порядка байтов, но распечатка байтов и распечатка шестнадцатеричного числа байтов дают мне разные выходные данные, причем шестнадцатеричный результат является ожидаемым. Но я не знаю, почему они разные.
import ctypes
class test_struct(ctypes.BigEndianStructure):
_pack_ = 1
_fields_ = [ ('f1', ctypes.c_ushort, 16) ]
foo = test_struct()
foo.f1 = 0x8043
bs = bytes(foo)
print(str(bs[0:1]) + " " + str(bs[1:2]))
print(bs.hex(' '))
Вывод:
b'\x80' b'C'
80 43
Подробнее здесь: https://stackoverflow.com/questions/791 ... -in-python
Почему шестнадцатеричный результат дает другой результат, чем индексация в байтах в Python? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение