Я пытаюсь использовать Zlib для сжатия текста.
Например, у меня есть текст T='blah blah blah blah'
Мне нужно сжать его для этого. Я использую S=zlib.compress(T)
. Теперь я хочу получить ASCII-форму S
, чтобы я мог распаковать этот T
, но в другая программа.
Спасибо,
EDIT: Я думаю, у меня есть способ решить его, вот так:
import zlib, base64
text = 'Qaru Qaru Qaru Qaru Qaru Qaru Qaru Qaru Qaru Qaru '
code = base64.b64encode(zlib.compress(text,9))
print code
который дает:
eNoLDnF09lbwD3MNcvPxD1cIHhxcAE9UKaU=
Теперь я могу скопировать этот код в другую программу, чтобы вернуть исходную программу:
import zlib, base64
s='eNoLDnF09lbwD3MNcvPxD1cIHhxcAE9UKaU='
data = zlib.decompress(base64.b64decode(s))
print data
Пожалуйста, предложите, если вы знаете какой-либо другой метод сжатия, который даст лучшие результаты, в то же время совместимый с тем же способом.