首页 >后端开发 >Python教程 >如何在Python中高效计算目录大小?

如何在Python中高效计算目录大小?

Susan Sarandon
Susan Sarandon原创
2024-11-01 14:50:28380浏览

How to Efficiently Calculate Directory Size in Python?

使用 Python 进行目录大小计算

为了测量目录的空间占用情况,Python 提供了多种方法。下面我们深入探讨一个高效、全面的解决方案:

<code class="python">import os

def directory_size(start_path):
    total_size = 0

    for root, directories, files in os.walk(start_path):
        for file in files:
            file_path = os.path.join(root, file)
            if not os.path.islink(file_path):
                total_size += os.path.getsize(file_path)

    return total_size</code>

该方案的优点:

  • 递归遍历所有子目录,保证全面的大小计算。
  • 排除符号链接,可能指向目录外部的文件。
  • 以字节为单位计算大小,这是存储的基本单位。

其他注意事项:

  • 要将大小设置为兆字节 (MB) 或千兆字节 (GB) 格式,请使用 round(total_size / 1024 ** 2, 2) 表示 MB,或使用 round(total_size / 1024 ** 3, 2) 表示 GB。
  • 要排除隐藏文件,请添加 if file[0] != '.'循环内total_size = os.path.getsize(file_path)之前。

以上是如何在Python中高效计算目录大小?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn