2016-10-10 36 views
1

我知道你可以使用.file_size方法得到ZIP文件中文件的大小(字節數) 但是,有沒有什麼我可以得到的大小文件夾呢?如何知道一個zipfile文件夾中的文件大小(Python)

例:

import zipfile, os 

os.chdir('C:\\')  
zp= zipfile.ZipFile('example.zip') 

spamInfo = zp.getinfo('spam.txt') #Here, Instead of a file I'd like to put a folder 
spamInfo.file_size 

zp.close() 

任何幫助將不勝感激。

+1

您可能需要循環查找文件夾中的文件。然後用zp.getinfo('file')獲取信息。然後每次只用file_size增加一個變量。 – Mirage

+1

'sum(zp.getinfo(filename).file_size for filename in folder)'? –

+0

對不起這個愚蠢的問題,我是新來的,但是寫一個文件夾的正確方法是什麼?例。如果我在zip文件中有一個名爲'Drawings'的文件夾。我應該在'\\繪圖'中放置文件名=>嗎? – tadm123

回答

4

只需將下面的代碼放入您的程序中即可。

size = sum([zinfo.file_size for zinfo in zp.filelist]) 
zip_kb = float(size)/1000 #kB 

希望它能爲你工作。 :)

+0

你不需要建立一個列表,'sum'將與理解表達式一起工作。 –

相關問題