Python có các codec tiêu chuẩn byte-byte để thực hiện các phép biến đổi thuận tiện như trích dẫn có thể in được (phù hợp với 7 bit ascii), base64 (phù hợp với chữ số), thoát hex, nén gzip và bz2. Trong Python 2, bạn có thể làm:
b'foo'.encode('hex')
Trong Python 3, str.encode
/ bytes.decode
hoàn toàn dành cho các byte <-> str chuyển đổi. Thay vào đó, bạn có thể làm điều này, hoạt động trên Python 2 và Python 3 ( s / encode / decode / g cho nghịch đảo):
import codecs
codecs.getencoder('hex')(b'foo')[0]
Bắt đầu với Python 3.4, có một tùy chọn ít khó xử hơn:
codecs.encode(b'foo', 'hex')
Các codec misc này cũng có thể truy cập được bên trong các mô-đun của riêng họ (base64, zlib, bz2, uu, quopri, binascii); API ít nhất quán hơn, nhưng đối với các codec nén, nó cung cấp nhiều quyền kiểm soát hơn.