Python读取二进制文件,二进制数据到字符串?

时间:2011-10-02 22:02:30

标签: python string binary

我正在尝试学习Python,目前正在网上做一些练习。其中一个涉及阅读zip文件。

当我这样做时:

import zipfile
zp=zipfile.ZipFile('MyZip.zip')
print(zp.read('MyText.txt'))

打印:

b'Hello World'

我只想要一个带有“Hello World”的字符串。我知道这很愚蠢,但我能想到的唯一方法就是:

import re
re.match("b'(.*)'",zp.read('MyText.txt'))

我该怎么做?

3 个答案:

答案 0 :(得分:5)

您需要将字符串中的原始字节解码为实际字符。尝试在打印前从.decode('utf-8')返回的值上运行zp.read()

答案 1 :(得分:5)

首先需要decode the bytes to text

print(zp.read('MyText.txt').decode('utf-8'))

答案 2 :(得分:5)

只需decode个字节:

print(zp.read('MyText.txt').decode('UTF-8'))