今天直接放代码吧,整体思路是利用os.walk列出目录及文件,然后通过os.path.getsize获取文件大小,通过自定义的函数gmkb(bites)将文件进行单位的格式化。

import os
def gmkb(bites):        #换算成相应的单位便于查看
    if  bites >= 1024 :
        kb = bites/1024
        bb = bites%1024
        if kb >= 1024 :
            mb = kb/1024
            kb = kb%1024
            if mb >= 1024 :
                gb = mb/1024
                mb = mb%1024
            else:
                gb = 0
        else:
            mb = 0
    else:
        kb = 0
        bb = bites
    print("文件夹的大小为:{:.0f}Gb {:.0f}Mb {:.0f}kb {:.0f}b".format(gb, mb, kb, bb))      #取消小数点输出
 
def getFileSize(filePath, size=0):
    for root, dirs, files in os.walk(filePath):
        for f in files:
            size += os.path.getsize(os.path.join(root, f))
    gmkb(size)
 
getFileSize(".")