首页  >  文章  >  后端开发  >  如何使用 Python 计算目录大小?

如何使用 Python 计算目录大小?

Linda Hamilton
Linda Hamilton原创
2024-11-02 14:37:29774浏览

How Can I Calculate Directory Size Using Python?

使用 Python 计算目录大小:推出全面的解决方案

估计目录的大小是编程中的常见任务。 Python 以其强大的标准库提供了多种方法来解决这个问题。

一种方法使用 os.walk() 函数。它遍历目录树,累积文件大小,并以人类可读的格式显示结果:

<code class="python">import os

def get_size(start_path='.'):
    total_size = 0
    for dirpath, dirnames, filenames in os.walk(start_path):
        for f in filenames:
            fp = os.path.join(dirpath, f)
            if not os.path.islink(fp):
                total_size += os.path.getsize(fp)

    return total_size

print(get_size(), 'bytes')</code>

或者,使用 os.listdir() 的更简洁方法排除子目录:

<code class="python">import os
sum(os.path.getsize(f) for f in os.listdir('.') if os.path.isfile(f))</code>

要获得更详细的信息,os.stat() 提供文件和目录统计信息。 st_size 属性提供文件大小(以字节为单位):

<code class="python">import os

nbytes = sum(d.stat().st_size for d in os.scandir('.') if d.is_file())</code>

Python 的最新版本包含 pathlib 模块。它的解决方案结合了 os 和 os.path 的功能:

<code class="python">from pathlib import Path

root_directory = Path('.')
sum(f.stat().st_size for f in root_directory.glob('**/*') if f.is_file())</code>

这些技术有效地量化了 Python 中的目录大小。无论选择os.walk、os.listdir、os.stat还是pathlib,程序员都可以根据自己的需求选择最合适的方法。

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

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