Я пытаюсь понять, что на самом деле делает from_bytes()
.
Документация упоминает об этом :
Аргумент byteorder определяет порядок байтов, используемый дляпредставляют целое число.Если byteorder «большой», самый старший байт находится в начале байтового массива.Если byteorder «маленький», самый старший байт находится в конце байтового массива.Чтобы запросить собственный порядок байтов в хост-системе, используйте sys.byteorder в качестве значения порядка байтов.
Но на самом деле это не говорит мне, как на самом деле вычисляются значения байтов.Например, у меня есть этот набор байтов:
In [1]: byte = b'\xe6\x04\x00\x00'
In [2]: int.from_bytes(byte, 'little')
Out[2]: 1254
In [3]: int.from_bytes(byte, 'big')
Out[3]: 3859021824
In [4]:
Я попытался ord()
, и он возвращает это:
In [4]: ord(b'\xe6')
Out[4]: 230
In [5]: ord(b'\x04')
Out[5]: 4
In [6]: ord(b'\x00')
Out[6]: 0
In [7]:
Я не вижу, как 1254
или 3859021824
было вычислено из значений выше.
Я также нашел этот вопрос , но, похоже, он не объясняет, как именно он работает.
Так как рассчитывается?