如何在 Python 中计算目录大小:方法比较

Susan Sarandon
发布: 2024-11-01 14:03:02
原创
955 人浏览过

How to Calculate Directory Sizes in Python: A Comparison of Methods

使用 Python 计算目录的大小

在开始自定义实现之前,值得探索现有的解决方案是否可以简化以下任务:确定目录的大小。

使用 os.walk 的建议解决方案

以下 Python 例程熟练地遍历子目录并累积每个文件的大小:

<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)
            # Skip symbolic links
            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.path.getsize:获取文件大小(以字节为单位)
  • os.path.islink:检测符号链接
  • os.path.stat().st_size:另一种文件大小检索方法
  • scandir 包:提供高效的walk 方法
  • pathlib 模块:更简洁、更通用的解决方案

通过选择预先存在的代码,您可以加快开发过程,同时确保计算目录大小的准确性。

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

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!