Zipfile:我怎么知道一个项目是一个目录?

时间:2012-01-19 22:29:29

标签: python zip

做这样的事情:

from zipfile import ZipFile

#open zip file
zipfile = ZipFile('Photo.zip')

#iterate zip contents
for zipinfo in zipfile.filelist:
    #do something
    filepath, filename = path.split(zipinfo.filename)

我如何知道zipinfo是文件还是目录?

感谢您的支持。

2 个答案:

答案 0 :(得分:16)

可能这是正确的方法:

is_dir = lambda zipinfo: zipinfo.filename.endswith('/')

答案 1 :(得分:5)

从Python 3.6开始,有ZipInfo.is_dir()方法。

with zipfile.ZipFile(zip_file) as archive:
    for file in archive.namelist():
        file_info = archive.getinfo(file)
        if file_info.is_dir():
            # do something

See the Python 3.6 docs了解详情。