2011-09-29 107 views
1

如何在python中遍历一个zip文件的内容而不必提取它们?如何使用python检索zip文件中的目录?

如果提取是唯一的方法,它是否有效,如果我创建一个独特的临时文件夹并提取它们然后遍历并删除临时文件夹后?

+0

您是否在使用['zipfile'](http://docs.python.org/library/zipfile.html)模块? –

+0

@GregHewgill:是的,我是。 – Marconi

回答

3

使用ZipFile类的namelist()方法获取存档中所有文件名的列表,而无需解压缩它们。例如:

import zipfile 

myzip = zipfile.ZipFile('myzip.zip', 'r') 
filenames = myzip.namelist() 
# Do something with filenames 
+0

如果OP正在尝试检索目录,他将不得不使用'infolist'而不是'namelist'。 – Gabe

+0

@Gabe:在一个ZipInfo对象中,我似乎无法找到一个合适的属性或方法来告诉我该项目是否是dir。 – Marconi

+0

@Adam:假设我有文件名,那些只是字符串。我怎么知道哪些是目录和文件? – Marconi

相关问题