檢查 Zipfile 內容
有幾種方法可以檢查 zipfile 的內容。你可以使用 printdir
獲取傳送到 stdout
的各種資訊
with zipfile.ZipFile(filename) as zip:
zip.printdir()
# Out:
# File Name Modified Size
# pyexpat.pyd 2016-06-25 22:13:34 157336
# python.exe 2016-06-25 22:13:34 39576
# python3.dll 2016-06-25 22:13:34 51864
# python35.dll 2016-06-25 22:13:34 3127960
# etc.
我們還可以使用 namelist
方法獲取檔名列表。在這裡,我們只需列印列表:
with zipfile.ZipFile(filename) as zip:
print(zip.namelist())
# Out: ['pyexpat.pyd', 'python.exe', 'python3.dll', 'python35.dll', ... etc. ...]
我們可以呼叫 infolist
方法來代替 namelist
,該方法返回 ZipInfo
物件列表,其中包含有關每個檔案的附加資訊,例如時間戳和檔案大小:
with zipfile.ZipFile(filename) as zip:
info = zip.infolist()
print(zip[0].filename)
print(zip[0].date_time)
print(info[0].file_size)
# Out: pyexpat.pyd
# Out: (2016, 6, 25, 22, 13, 34)
# Out: 157336