logo

os.walk() in Python

Hoe het bestandssysteem in Python doorlopen? Stel dat we de onderstaande bestandsstructuur in ons systeem hebben gegeven en we willen alle takken volledig van boven naar beneden doorlopen? Voorbeeld bestandssysteem

dhanashree verma

Hoe werkt os.walk() in Python?

OS.walk() genereert de bestandsnamen in een directorystructuur door de boom van boven naar beneden of van onder naar boven te doorlopen. Voor elke map in de boom die geworteld is in map top (inclusief top zelf), levert dit een 3-tupel op (dirpath, dirnames, filenames).



  • wortel : Drukt alleen mappen af ​​van wat u hebt opgegeven.
  • inspraak: Drukt submappen af ​​vanuit de root.
  • bestanden: Drukt alle bestanden af ​​vanuit de root en mappen.
Python3
# Driver function import os if __name__ == "__main__": for (root,dirs,files) in os.walk('.', topdown=True): print (root) print (dirs) print (files) print ('--------------------------------')>

Uitgang:

k dichtstbijzijnde buuralgoritme
['gfg-article-deep-crawl-master (1)', '.ipynb_checkpoints'] ['t.pdf', 'Untitled.ipynb'] -------------------------------- ./gfg-article-deep-crawl-master (1) ['gfg-article-deep-crawl-master'] [] -------------------------------- ./gfg-article-deep-crawl-master (1)/gfg-article-deep-crawl-master ['check_rank'] ['rank_scraper.py', 'search-page (copy).html', '.gitignore', 'search-page.html', 'globals.py', 'requirements.txt', 'sel_scraper.py', 'README.md'] -------------------------------- ./gfg-article-deep-crawl-master (1)/gfg-article-deep-crawl-master/check_rank [] ['selenium.py', 'tools.py', '__init__.py', 'run_check.py'] -------------------------------- ./.ipynb_checkpoints [] ['Untitled-checkpoint.ipynb'] -------------------------------->

Genest Lijstbegrip Met Os.Walk

Programma om de Python-bestanden in de directorystructuur te vinden, wat betekent dat we de bestanden moeten vinden die eindigen op de extensie .py.

Python
# code import os if __name__ == '__main__': pythonFiles = [file for dirs in os.walk('.', topdown=True) for file in dirs[2] if file.endswith('.py')] print('python files in the directory tree are ') for r in pythonFiles: print(r)>

Uitvoer
python files in the directory tree are Solution.py>