Comment calculer efficacement la taille du répertoire en Python ?

Susan Sarandon
Libérer: 2024-11-01 14:50:28
original
286 Les gens l'ont consulté

How to Efficiently Calculate Directory Size in Python?

Calcul de la taille d'un répertoire directeur avec Python

Pour évaluer l'occupation de l'espace d'un répertoire, Python propose plusieurs approches. Ci-dessous, nous examinons une solution efficace et complète :

<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>
Copier après la connexion

Avantages de cette solution :

  • Parcourt de manière récursive tous les sous-répertoires, garantissant un calcul complet de la taille.
  • Exclut liens symboliques, qui peuvent pointer vers des fichiers en dehors du répertoire.
  • Calcule la taille en octets, l'unité fondamentale de stockage.

Considérations supplémentaires :

  • Pour formater la taille en mégaoctets (Mo) ou gigaoctets (Go), utilisez round(total_size / 1024 ** 2, 2) pour Mo ou round(total_size / 1024 ** 3, 2) pour Go.
  • Pour exclure les fichiers cachés, ajoutez if file[0] != '.' avant total_size = os.path.getsize(file_path) dans la boucle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!