在python中压缩和编码文件的内容

时间:2013-08-08 10:19:00

标签: python encode zlib

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

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

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

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

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

1 个答案:

答案 0 :(得分:3)

您需要读取文件:

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

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