Python, alıntılanan yazdırılabilir (7 bit ascii'ye sığar), base64 (alfanümeriklere uyar), altıgen kaçan, gzip ve bz2 sıkıştırma gibi uygun dönüşümleri gerçekleştiren bayt-bayt standart kodeklere sahiptir. Python 2'de şunları yapabilirsiniz:
b'foo'.encode('hex')
Python 3'te, str.encode
/ bytes.decode
kesinlikle bayt <-> str dönüşümleri içindir. Bunun yerine, Python 2 ve Python 3 ( tersi için s / encode / decode / g ) üzerinde çalışan bunu yapabilirsiniz:
import codecs
codecs.getencoder('hex')(b'foo')[0]
Python 3.4 ile başlayarak, daha az garip bir seçenek var:
codecs.encode(b'foo', 'hex')
Bu çeşitli kodeklere kendi modüllerinde de erişilebilir (base64, zlib, bz2, uu, quopri, binascii); API daha az tutarlıdır, ancak sıkıştırma kodekleri için daha fazla kontrol sunar.