Python 3.4+base64функция
base64.b85encode()
Ascii85 и Base85
Кодирует байты в Base85 с алфавитом, как в git-патчах. Алфавит другой, чем у Ascii85, хотя плотность та же.
Синтаксис
base64.b85encode(b, pad=False)
b85 и a85 несовместимы: одни и те же байты дают разные строки (b'hello' → b'Xk~0{Zv' против b'BOu!rDZ'), и прочитать одно другим нельзя. pad=True дополняет вход нулями до кратности 4, и при декодировании эти нули вернутся как часть данных — длину исходника придётся хранить отдельно.
Примеры
import base64
print(base64.b85encode(b'hello'), base64.a85encode(b'hello')) # → b'Xk~0{Zv' b'BOu!rDZ'
print(base64.b85decode(base64.b85encode(b'hi', pad=True))) # → b'hi\x00\x00' — нули остались
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности