La fonction de marche dans n'importe quel système d'exploitation est comme le système d'exploitation.chemin. La fonction de marche génère les noms de fichiers dans un arbre de répertoire en naviguant dans l'arbre dans les deux sens, soit un transversal de haut en bas ou de bas. Chaque répertoire de n'importe quel arbre d'un système a un répertoire de base à l'arrière. Et puis il agit comme un sous-répertoire. Le walk () génère la sortie en trois tuples, le chemin, le répertoire et les fichiers qui viennent dans n'importe quel sous-répertoire.
Les noms présents dans la liste ne contiennent aucun composant du chemin. Pour récupérer le chemin complet qui commence du haut vers un répertoire ou un fichier dans le chemin du répertoire, nous utilisons le système d'exploitation.marcher.join () qui a des arguments de dirpath et le nom du répertoire.
De haut en bas et de bas en haut sont les deux arguments facultatifs à la fois. Cela signifie que l'une des options doit être utilisée dans la fonction si nous voulons une séquence de répertoires. Alors que dans certains cas, la séquence descendante est sélectionnée par défaut si nous ne mentionnons aucun argument concernant cette séquence. Si l'argument de haut en bas est vrai, le triple du répertoire principal s'affiche d'abord, puis les sous-répertoires. Et si le haut-bas est faux, le triple du répertoire s'affiche après cela pour les sous-répertoires. En d'autres termes, la séquence est de manière ascendante.
Lorsque la situation descendante est vraie, l'utilisateur peut mettre à jour la liste des noms du répertoire, puis Walk () ne sera appliqué que sur les sous-répertoires. Tandis que la mise à jour des noms des répertoires lorsque le haut-bas est faux est inapplicable. En effet. La fonction ListDir () peut éliminer les erreurs par défaut.
Python OS.Walk () Travailler
Voyons comment le système de fichiers est traversé dans Python. Cela fonctionne comme un arbre ayant une seule racine qui se divise davantage en branches. Et les branches sont élargies en tant que sous-branches et ainsi de suite. Cette fonction de marche produit les noms des fichiers dans un arbre de répertoire en naviguant sur l'arborescence en haut ou en bas.
Syntaxe du système d'exploitation.marcher()
# OS.walk (top [, topdown = true [onError = non [suivantLinks = false]]])haut = C'est la tête ou un point de départ de toute traversée de sous-direction. Il donne 3 tuples, comme nous l'avons décrit au début de l'article.
De haut en bas = Dans le cas où il est vrai, la numérisation des répertoires est du haut en haut et vice versa dans le cas opposé.
Onneroor = Ceci est une fonctionnalité spéciale conçue pour surveiller l'erreur. Il peut soit montrer une erreur pour continuer à marcher ou soulever l'exception pour rejeter la promenade.
Suivez les liens = Conduit à des récursions imparables; il est défini sur vrai.
Note: Le Suivre des liens L'option est définie comme vrai; Il conduit à des récursions imparables si un lien pointe vers le répertoire de base de son propre. La fonction Walk () ne prend pas le dossier des répertoires qu'il a déjà traversés.
Exemple 1
Tous les fichiers du répertoire doivent être répertoriés en utilisant cette fonction. Considérez un extrait de code. La première étape consiste à importer le module OS, comme d'autres fonctionnalités à importer par la bibliothèque Python.
# Importer un système d'exploitationAprès cela, nous définirons une fonction nommée 'module OS'. À l'intérieur de cette fonction, utilisez une boucle pour obtenir tous les fichiers suivant les répertoires et la racine. La technique descendante est utilisée ici. Et "Suivre des liens"Est gardé vrai.
Importer un système d'exploitationCe module n'imprimera que les noms de fichiers dans le répertoire. Le '.«L'arrêt complet que nous avons utilisé ici est spécifiquement pour le dossier actuel. Dans le programme principal, nous appellerons la fonction déclarée.
Dans la sortie, vous pouvez voir les noms de fichiers dans le dossier actuel.
Exemple 2
Cette fonction renverra la valeur en scannant tous les répertoires et les sous-répertoires dans le chemin actuel du répertoire de la direction inférieure à la direction, comme haut de gamme = false ici.
OS.marcher(".», Topdown = false) #!/ usr / bin / pythonUne boucle pour la boucle est utilisée pour imprimer les fichiers et les répertoires séparément. Le "OS.chemin.rejoindre”Apporte le nom et le répertoire principal du chemin.
Une petite partie de la sortie est indiquée ci-dessus. Si l'on veut obtenir la sortie en haut de la commande, alors le module de haut en bas doit être conservé comme vrai.
# OS.marcher(".», Topdown = true)Exemple 3
Cet exemple diffère des précédents dans le type de paramètres utilisés. Ici, la fonction ne prend que le «chemin». A pour la boucle est utilisé pour afficher les valeurs des fichiers, répertoires du chemin. Si la déclaration est utilisée pour limiter la valeur résultante dans chaque ligne à la fois. Ici, nous avons utilisé 4. Après tous les 4 mots, la valeur sera déplacée vers la ligne suivante. La valeur de départ de la variable «i» est considérée comme zéro.
Importer un système d'exploitationLa sortie respective est indiquée ci-dessous. Le chemin, les répertoires et les fichiers sont affichés en sortie.
Exemple 4
Comme la méthode Walk () dans le système d'exploitation, nous pouvons également utiliser le «OS.listDir ()”Alternative au chemin, qui affichera toutes les valeurs de la valeur particulière. je.e., Ici, nous avons utilisé des fichiers pour être imprimés. Le chemin est considéré comme un argument pour la fonction. La valeur résultante sera stockée dans la variable des fichiers. For Loop affichera tous les fichiers dans le répertoire respectif.
# Fichiers = os.ListDir (chemin) Importer un système d'exploitationLa liste s'affiche ici qui contient tous les fichiers du répertoire respectif.
Exemple 5
Vous avez vu les exemples dans lesquels tous les dossiers ou chemins sont affichés, même ceux que nous voulons cacher; Ils sont également exposés. Mais «OS.walk () ”utilise certaines fonctionnalités qui permettent à l'exclusion des répertoires cachés.
Après avoir importé le module OS, nous avons introduit le chemin que nous utiliserons dans l'exemple.
# DIRS.[:] = [d pour d dans les rédacteurs. Si non D.commence avec('.')] Importer un système d'exploitationCette fonctionnalité est capable de cacher les répertoires, maintenant avec cette liste, les répertoires cachés ne sont pas inclus dans la sortie.
Exemple 6
Supposons que vous ayez une liste de noms du répertoire que vous souhaitez négliger pendant la fonction Walk (). Une façon consiste à utiliser la méthode décrite ci-dessus. La deuxième façon va être expliquée ici. Cela donnera le même résultat.
# DIRS.[:] = [] Importer un système d'exploitationExemple 7
Si vous souhaitez prendre l'impression des valeurs absolues, les noms des sous-répertoires et les répertoires mais pas tout le chemin, dans ce cas, la fonction de marche Python est utilisée.
Importer un système d'exploitationÀ partir de la sortie, vous pouvez voir que les valeurs résultantes sont devenues limitées.
Conclusion
La fonction «Python OS Walk» est utilisée pour parcourir tous les chemins d'un répertoire, de haut en bas ou du bas en haut. Nous avons également vu comment masquer les données indésirables à prévisualiser. Cet article sera sûrement un avantage pour implémenter la fonction de marche du module OS à Python.