2011-09-29 128 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

相關問題