From | To | Expression |
---|---|---|
45 | "45" | str(data) |
45 | "101101" | bin(data) |
45 | "2D" | hex(data) |
45 | "\x00\x00\x00\x2d" | struct.pack('!i', data) |
"45" | 45 | int(data) |
"45" | "3435" | data.encode('hex') |
"101101" | 45 | int(data, 2) |
"2D" | 45 | int(data, 16) |
"2D" | "\x2d" | binascii.unhexlify(data) or data.decode('hex') |
"\x00\x00\x00\x2d" | 45 | struct.unpack('!i', data)[0] |
"\x2d" | "2D" | binascii.hexlify(data) |
"3435" | "45" | data.decode('hex') |
Comments are welcome here or in my original blog post regarding this table.
Definitely handy.
bin
andhex
add0b
and0x
to the beginning of the strings --'{:b}'.format
and'{:x}'.format
don't do that.encode('hex')
anddecode('hex')
could use an explanation, and note thathex
has been removed as an encoding in Python 3.My fork with those changes: https://gist.github.com/agfor/5426355