import binascii
print(binascii.b2a_hex(b'AAA'))
print(binascii.a2b_hex('414141'))
print(binascii.a2b_hex(b'414141'))
import codecs
print(codecs.encode(b'AAA', 'hex'))
print(codecs.decode(b'414141', 'hex'))
print(codecs.decode('414141', 'hex'))
import sys
if sys.version_info >= (3, 5):
print(b'AAA'.hex())
print(bytes.fromhex('414141'))
import base64
print(base64.b64encode(b'Hello World'))
print(base64.b64decode(b'SGVsbG8gV29ybGQ='))
import codecs
print(codecs.encode(b'Hello World', 'base64'))
print(codecs.decode(b'SGVsbG8gV29ybGQ=', 'base64'))
import binascii
print(binascii.b2a_base64(b'Hello World'))
print(binascii.a2b_base64(b'SGVsbG8gV29ybGQ='))
print(binascii.a2b_base64('SGVsbG8gV29ybGQ='))
import struct
print(struct.pack('<I', 1337))
print(struct.pack('>I', 1337))
print(struct.unpack('!I', b'\x00\x00\x059'))
import sys
if sys.version_info >= (3, 2):
a = 1337
print(a.to_bytes(4, 'little'))
print(a.to_bytes(2, 'big'))
print(int.from_bytes(b'\x00\x00\x059', 'big'))
import hashlib
md = hashlib.sha1() # md5(), sha256(), ..., pbkdf2_hmac()
# or
md = hashlib.new('sha1')
md.update(b'Hello World')
print(md.hexdigest())
print(md.digest())
import codecs
print(codecs.encode('Hello World', 'rot13'))
print(codecs.decode('Uryyb Jbeyq', 'rot13'))