使用Python计算zip文件中不同格式的文件数

2024-04-25 00:29:11 发布

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

我的目录中有很多压缩文件,我想得到每个压缩文件的文件数。例如,对于zip文件“自然.zip“,我想得到以下输出:

file_name   file_format
nature      jpg 2, png 1 

到目前为止,我设法打印了内容,但不知道如何才能向前推进

^{pr2}$

非常感谢


Tags: 文件name目录format内容pngzipfile
1条回答
网友
1楼 · 发布于 2024-04-25 00:29:11

这里有一个例子。这将按字典中的扩展名对zips中的文件进行分组并打印输出。根据你的情况调整这个。在

#Filegroup.py
from zipfile import ZipFile
from glob import glob

print "file_name","\t","file_format"
for zips in glob('*.zip'):
    with ZipFile(zips) as zip:
        files = zip.namelist()
        filecounts = {}
        for file in files:
            ext = file.split('.')[-1]
            if ext in filecounts:
                filecounts[ext] += 1
            else:
                filecounts[ext] = 1
        print zip.filename,'\t\t',', '.join([' '.join(map(str,elem)) for elem in filecounts.items()])

测试:

^{pr2}$

相关问题 更多 >