如何读取 zip 文件中的文本文件?

新手上路,请多包涵

所以说我有一个名为“files.zip”的 zip 文件,它包含“text1.txt”:

 words

和“text2.txt”:

 other words

我如何告诉 python 打开并读取 text1.txt 文件?我知道通常要打开 zip 文件之外的文本文件,我会这样做:

 file = open('text1.txt','r')

原文由 ajkey94 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 630
2 个回答

您可以像这样使用 zipfile 模块:

 zip = zipfile.ZipFile('test.zip')
file = zip.read('text1.txt')

不要忘记导入压缩文件模块: import zipfile

原文由 solusipse 发布,翻译遵循 CC BY-SA 3.0 许可协议

如果您需要以文本模式打开 ZIP 存档中的文件,例如将其传递给 csv.reader ,您可以使用 io.TextIOWrapper 来实现:

 import io
import zipfile

with zipfile.ZipFile("files.zip") as zf:
    with io.TextIOWrapper(zf.open("text1.txt"), encoding="utf-8") as f:
        ...

原文由 iafisher 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题