微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python基础 -- os模块

获取指定文件夹的大小:

方法1:使用递归:

import os
def  getTotalSize(path):
    sumSize = 0
    if os.path.isdir(path):
        dirList = os.listdir(path)
        for dir in dirList:
            if os.path.isdir(os.path.join(path, dir)):
                sumSize += getTotalSize(os.path.join(path, dir))
            else:
                sumSize += os.path.getsize(os.path.join(path, dir))
        return sumSize
    elif os.path.isfile(path):
        return os.path.getsize(path)
    else:
        print("not valid path")

方法2: 使用循环列表

import os
def getTotalSizeByXH(path):
    if os.path.isdir(path):
        sumSize = 0
        listdir = [os.path.join(path, dir) for dir in os.listdir(path)]
        print("listdir", listdir)
        while listdir:
            subDir = listdir.pop(-1)
            print("subDir", subDir)
            if os.path.isdir(subDir):
                listdir.extend([os.path.join(subDir, dir) for dir in os.listdir(subDir)])
            else:
                sumSize+=os.path.getsize(subDir)
        return sumSize
    elif os.path.isfile(path):
        return os.path.getsize(path)
    else:
        print("%s, 该路径非法" %path)

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐