python 3.6.3。 zlib压缩

时间:2018-11-19 09:49:55

标签: python-3.x compression zlib

我正在尝试使用zlib在python 3.6.3中压缩字符串,但是出现错误(TypeError:需要一个类似字节的对象,而不是'str'),它应该可以在python 2.7-版本上使用,这是我的简单代码:

import zlib
a='hellohellohelloheeloohegregrf'
b=zlib.compress(a)
print(b)

1 个答案:

答案 0 :(得分:0)

import zlib
a='hellohellohelloheeloohegregrf'
b=zlib.compress(a.encode("utf-8"))
print(b)

替代:

import zlib
a= b'hellohellohelloheeloohegregrf'
b=zlib.compress(a)
print(b)

Python2.x中,此字符串文字称为str对象,但存储为bytes

Python3.x中,此字符串文字是str对象,其类型为Unicode。因此,需要给它加上b前缀或使用.encode来获得bytes对象。