zip中的多个文本文件分析

2024-10-01 13:26:41 发布

您现在位置:Python中文网/ 问答频道 /正文

它是一个程序printzip.py,它将打印zip文件的内容。假设Zip包含多个文本文件,因此它将打印文本文件的名称。我可以接受。你知道吗

import zipfile
zf = zipfile.ZipFile('Desktop.zip', 'r')
print (zf.namelist())

Output :- test1.txt, test2.txt

但是,我的问题是,我怎样才能把这些文本文件进行进一步的分析。 比如,我想计算那些文本文件的行、字、字符(我可以执行这些操作)。你知道吗

但是,我的问题是,如何把这个输出作为变量来输入下一步的工作。因为我们不知道文本文件的名称。它可以是一个或多个。你知道吗

例如,我想将test1.txt和test2.txt作为未来操作的输入。你知道吗

另外,在运行printzip.py程序之前,我们不知道zip文件包含这两个文本文件。有没有这个多处理工作的图书馆?谢谢。你知道吗


Tags: 文件pyimport程序txt名称内容zip
1条回答
网友
1楼 · 发布于 2024-10-01 13:26:41

zf.namelist()返回存档文件名的Python列表。可以使用for循环从该列表中获取每个名称,并在循环中使用zf.read()获取每个文件的字节。例如,这将打印名称列表,然后打印存档中每个文件的名称和未压缩大小。你知道吗

import zipfile
zf = zipfile.ZipFile('Desktop.zip', 'r')
fnames = zf.namelist()
print(fnames)
for fname in fnames:
    data = zf.read(fname)
    print(fname, len(data))
    #... do other text processing here

zf.close()

相关问题 更多 >