写了个小小的使用脚本,里面就2个函数,留着用吧:
'''计算一个文件夹的总字节数'''
import os
## 计算一个文件夹的总字节数,注意文件夹本身占4KBytes
def getBytes(folder):
result = 4096
for fobject in os.listdir(folder):
fpath = folder+'\\'+fobject
if os.path.isfile(fpath):
result += os.path.getsize(fpath)
else:
result += getBytes(fpath)
return result
## 排序输出一个文件夹下所有文件夹的字节数,可设定是否输出
def sortFolder(folder, isShown = True):
folders = []
for fobject in os.listdir(folder):
fpath = folder+'\\'+fobject
if os.path.isdir(fpath):
fsize = getBytes(fpath)
folders.append([fobject, fsize])
folders.sort(key = lambda x:x[1])
if isShown:
for i in range(len(folders)):
print(folders[i])
return folders
if __name__ == '__main__':
folder = 'e:\\pc\\war3'
print('The size of %s is:' % folder)
print('%.2f MBytes' % float(getBytes(folder)/(1024*1024)))
sortFolder(folder)