递归计算文件夹大小

import os
pathvar = "/home/Star/ceshi0801"


dirlist = os.listdir(pathvar)

 

def getdirsize(path):
  size = 0
  #把文件中的内容以列表的方式呈现
  listvar = os.listdir(path)


  # 开始遍历列表中的所有文件和文件夹
  for name in listvar:
  # 拼接一个新的路径
    newpath = os.path.join(path,name)
    # 判断是否是链接
    if os.path.islink(newpath):
    size += getdirsize(newpath)
    # 判断是否是文件
    elif os.path.isfile(newpath):
    size += os.path.getsize(newpath)
    # 判断是否是文件夹
    elif os.path.isdir(newpath):
    size += os.path.getsize(newpath)
    # 把累计的size大小返回
  return size

 

res = getdirsize(pathvar)
print(res)

posted @ 2018-08-02 13:33  bling_bling_star  阅读(219)  评论(0编辑  收藏  举报