1

我正在尝试使用 zlib.compress() 和 encode('base64') 在 python 中压缩和编码文件的内容,如下所示:

teststr = zlib.compress("/root/scriptss/test.sh").encode('base64')
print teststr

当我按如下方式解压缩和解码时,

revstr = zlib.decompress(teststr.decode('base64'))
print revstr

我将字符串/root/scriptss/test.sh作为输出而不是文件的内容。我哪里出错了?

4

1 回答 1

4

您需要阅读该文件:

with open("/root/scriptss/test.sh") as inputfile:
    teststr = zlib.compress(inputfile.read()).encode('base64')
    print teststr

zlib.compress()需要一个字符串来压缩,而不是文件名。

于 2013-08-08T10:20:50.207 回答