bytes to number python code example

Example: python bytes to int

"""
Python 3
"""

# int.from_bytes( bytes, byteorder, *, signed=False )
# bytes must evaluate as bytes-like object
# byteorder is optional. someString must evaluate as 'big' xor 'little'
# signed is optional. someBoolean opmust evaluate as boolean


# examples: 
someBytes = b'\x00\x01\x00\x02\x00\x03'
someInteger = int.from_bytes(someBytes)
someInteger = int.from_bytes(someBytes, 'big')
someInteger = int.from_bytes(someBytes, byteorder='little', signed=True)


"""
Python 2.7
"""

# no bytes is str in Python 2.7

import struct
struct.unpack(pattern, someBytes) 

# someBytes is of type str or byte array

# pattern is a string begining with '>' or '<', 
# followed by as many 'H' or 'B' chars needed 
# to cover the someBytes' length. 

# '>' stands for Big-endian
# '<' stands for Big-endian
# 'H' stands for 2 bytes unsigned short integer
# 'B' stands for 1 byte  unsigned char


# examples: 

>>> import struct
>>> sixBytes = b'\x00\x01\x00\x02\x00\x03'
>>> struct.unpack('>HHH', sixBytes)
(1, 2, 3)

>>> struct.unpack('<HHH', sixBytes)
(256, 512, 768)

>>> struct.unpack('>BBBBBB', sixBytes)
(0, 1, 0, 2, 0, 3)

>>> struct.unpack('<BBBBBB', sixBytes)
(0, 1, 0, 2, 0, 3)